CriticalSection_introducing critical thinking

CriticalSection_introducing critical thinkingEnterCriticalSection

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

函数 EnterCriticalSection 声明如下:

WINBASEAPI
VOID
WINAPI
EnterCriticalSection(
__inout LPCRITICAL_SECTION lpCriticalSection
);
是多线程中用来确保同一时刻只有一个线程操作被保护的数据的操作函数,相关的多线程数据操作函数还有:

使用流程:
CRITICAL_SECTION cs;//定义一个临界区
InitializeCriticalSection(&cs);//初始化临界区
EnterCriticalSection(&cs);//进入临界区/加锁
//操作数据
MyMoney*=10;//所有访问MyMoney变量的程序都需要这样写Enter… Leave…
LeaveCriticalSection(&cs);//离开临界区/解锁
DeleteCriticalSection(&cs);//删除临界区

要注意的是:临界区是用在多线程保护一个线程安全的,所以同一线程内部,多次执行EnterCriticalSection是可以的,但是如果线程退出时,不能及时LeaveCriticalSection或者加锁和解锁的次数不匹配,其他线程都无法使用此临界区。

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

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

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


相关推荐

  • 解决window10播放.avi格式视频黑屏,只有声音没有视频0xc00d5212错误

    解决window10播放.avi格式视频黑屏,只有声音没有视频0xc00d5212错误自己找的学习资源从百度网盘下载后,有些.avi视频黑屏,只有声音没有视频,尝试了两种办法:1.下载K-LiteCodecPack,但电脑自动拦截,不让安装,具体效果不详。2.下载格式工厂,亲测有效!!且操作简单步骤如下图所示:我转为的是MP4格式,点击MP4,然后添加文件添加好文件后,点确定但此时并没有真正的开始转换哦,必须按开始键才算开始。…

    2022年9月30日
    2
  • Matlab基本函数-length函数

    Matlab基本函数-length函数1、length函数:计算向量或矩阵的长度2、用法说明   y=length(x)函数计算指定向量或矩阵的长度y。如果参数变量x是向量,则返回其长度;如果参数变量是非空矩阵,则length(x)与max(size(x))等价3、举例说明>>x=’youhaidong’x=youhaidong>>y=length(x)y=10

    2022年6月12日
    68
  • hql删除mysql语句_如何使用delete语句删除数据

    hql删除mysql语句_如何使用delete语句删除数据如何使用delete语句删除数据发布时间:2021-01-1510:57:41来源:亿速云阅读:83作者:小新栏目:数据库这篇文章主要介绍如何使用delete语句删除数据,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!怎么使用delete语句删除数据?创建一个临时表,用于演示sqlserver语法中delete删除的使用方法IFOBJECT_ID(‘tempdb..#tb…

    2022年6月16日
    32
  • 新版白话空间统计(6):在ArcGIS中实现莫兰指数计算

    新版白话空间统计(6):在ArcGIS中实现莫兰指数计算上一篇简单说了一下莫兰指数的计算原理和计算公式,如果是学生或者基础研究者,鼓励好好的学习一下手算或者编程计算,所谓的基础不牢,地动山摇……但是对于工程界…

    2022年6月25日
    35
  • js也能写3D游戏?

    js也能写3D游戏?看完这本书《3DGameProgramingforKids》之后,发现3D游戏的学习,也可以使用javascript来写的。先要上这个网站https://threejs.org,然后下载它的three.js源码放到一个目录,比如js。然后放入这段代码: Myfirstthree.jsapp body{margin:0;} canvas{w

    2022年5月26日
    122
  • javascript 字符串包含判断_js去除字符串前后的空格

    javascript 字符串包含判断_js去除字符串前后的空格本文教程操作环境:windows7系统、jquery3.2.1版本,DELLG3电脑。小编介绍过js中使用indexOf()方法判断字符串包含某个字符(https://www.py.cn/web/js/22856.html),是一个很好用的方法,但除了这个方法之外,JavaScript中还有四种方法可以实现判断字符串包含某个字符:1、使用字符串search()方法search()方法用于检…

    2022年10月7日
    3

发表回复

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

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