C++临界锁CCriticalSection在线程中的使用

C++临界锁CCriticalSection在线程中的使用#define_AFXDLL#include<afxmt.h>#include<iostream>usingnamespacestd;CCriticalSectioncritical;inttick=0;DWORDWINAPIFunc1(LPVOIDlpParam);DWORD__stdcallFunc1(LPVOIDlpParam){critical.Lock();tick+=10;cout&lt.

大家好,又见面了,我是你们的朋友全栈君。

#define _AFXDLL
#include <afxmt.h>
#include <iostream>
using namespace std;

CCriticalSection critical;
int tick=0;


DWORD WINAPI Func1(LPVOID lpParam);
DWORD __stdcall Func1(LPVOID lpParam)
{
    critical.Lock();
    tick += 10;
    cout << "Func1 TICK NOW IS : " << tick << endl;
    critical.Unlock();
    return 0;
}


DWORD WINAPI Func2(LPVOID lpParam);
DWORD __stdcall Func2(LPVOID lpParam)
{
    critical.Lock();
    tick += 10;
    cout << "Func2 TICK NOW IS : " << tick << endl;
    critical.Unlock();
    return 0;
}

int main()
{
    HANDLE t1 = CreateThread(NULL, 0, Func1, NULL, 0, NULL);
    HANDLE t2 = CreateThread(NULL, 0, Func2, NULL, 0, NULL);

    while (true)
    {

    }

    CloseHandle(t1);
    CloseHandle(t2);
    return 0;
}


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/162057.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • input file 修改按钮名称[通俗易懂]

    input file 修改按钮名称[通俗易懂]解决方法:1、页面上放个隐藏的2、然后加上一个文本input(type=”text”)和一个按钮input(type=”button”)3、点按钮的时候调用的click选择文件4、在的onchange事件中把其值显示在文本input中5、注意把文本input设置成只读的,防止出错实例如下:

    2022年7月14日
    93
  • Fungus插件_插件大师

    Fungus插件_插件大师一个任务的fungus声明fungus设置一个开关,当触发碰撞器时,将开关打开,当在持续碰撞时如是碰到的是人物,并且按下空格且开关为开,就执行对话重载名字并且关闭开关//多个任务的时候就是加个else其他都一样usingSystem;usingSystem.Collections;usingSystem.Collections.Generic;usingFungus;usingUnityEngine;publicclassFungunNpcGrandFather:.

    2022年10月25日
    0
  • LOAM 论文及原理分析「建议收藏」

    LOAM 论文及原理分析「建议收藏」前言:由于对三维激光SLAM比较感兴趣,并且最近也在找无人驾驶激光SLAM算法的岗位,所以花了一个多月把LOAM的论文和源码好好看了一遍。发现论文还是比较容易明白,但一看代码全是坑。看论文懂了,看代码似懂非懂。为了尽快把这坑填上,所以诚邀读者一起探讨。作者始终认为填坑最好的方法是拉别人和你一起填坑。由于三千多行的源码不是一篇博客能够讲明白的,所以这篇博客主要讲一下我对LOAM论文…

    2022年5月11日
    33
  • 线性代数 行列式

    线性代数分为六大块:行列式矩阵向量方程组特征值二次型行列式一、行列式的概念1、二、三阶行列式2、排列、逆序、逆序数3、n阶行列式概念二、行列式的性质三、按行(列)展开公式1、代数余子式2、展开公式四、克拉默法则…

    2022年4月6日
    45
  • C++常见几种输入方法评测(int && long long)

    C++常见几种输入方法评测(int && long long)

    2021年9月27日
    42
  • 平衡二叉树AVL删除

    平衡二叉树AVL删除

    2021年9月14日
    50

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号