CRITICAL_SECTION 学习

 

// Critsetion.cpp : 定义控制台应用程序的入口点。
//#include "stdafx.h"
#include <Windows.h>
#include <iostream>
#include <process.h>
using namespace std;CRITICAL_SECTION g_cs;
char name[]="zhangdongsheng";unsigned __stdcall ThreadPoc1( void* pArguments)
{while (1){EnterCriticalSection(&g_cs); //如果此处不对全局变量name进行加锁//那么输出结果将有可能出现不一致现象memset(name,0,sizeof(name));strcpy(name,"Thread1");Sleep(600);cout<<"Thread1 "<<name<<endl;LeaveCriticalSection(&g_cs);}return 0;
}
unsigned __stdcall ThreadPoc2( void* pArguments)
{while(1){EnterCriticalSection(&g_cs);memset(name,0,sizeof(name));strcpy(name,"Thread2");Sleep(500);cout<<"Thread2 "<<name<<endl;LeaveCriticalSection(&g_cs);}return 0;
}
int _tmain(int argc, _TCHAR* argv[])
{InitializeCriticalSection(&g_cs);HANDLE hThread1=(HANDLE)_beginthreadex(NULL,0,ThreadPoc1,NULL,0,NULL);HANDLE hThread2=(HANDLE)_beginthreadex(NULL,0,ThreadPoc2,NULL,0,NULL);CloseHandle(hThread1);CloseHandle(hThread2);while(1){Sleep(500);}DeleteCriticalSection(&g_cs);return 0;
}

不加锁会出现不一致的情况

加锁后:

转载于:https://www.cnblogs.com/zhangdongsheng/archive/2012/03/27/2419923.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/495073.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

渗透测试 ( 4 ) --- Meterpreter 命令详解

From&#xff1a;https://blog.csdn.net/weixin_45605352/article/details/115824811 <<Web 安全攻防(渗透测试实战指南)>> 1、初识 Meterpreter 1.1.什么是 Meterpreter Meterpreter 是 Metasploit 框架中的一个扩展模块&#xff0c;作为溢出成功以后的攻击载荷使…

深度:中国车企遭遇最大危机!末尾淘汰赛开始【附下载】| 智东西内参

来源&#xff1a;智东西摘要&#xff1a;靠“合资”起步的中国自主品牌汽车走到了成熟期的转折点&#xff0c;面临的形势极为严峻。中国汽车自主品牌30多年的发展过程&#xff0c;从闭门造车到合资建厂&#xff0c;再到民营崛起&#xff0c;正在逐渐走向开放。经国务院批准&…

渗透测试 ( 5 ) --- 扫描之王 nmap、渗透测试工具实战技巧合集

Nmap 官方文档 ( 中文文档是 Nmap 版本4.50&#xff0c;英文文档是最新的 )&#xff1a; 英文文档&#xff1a;https://nmap.org/book/man.html中文文档&#xff1a;https://nmap.org/man/zh/index.html#man-description官方 Nmap 项目指南 &#xff1a;https://nmap.org/book…

OSI、TCP/IP or Five-layer(Protocols Use) Model

转载于:https://www.cnblogs.com/michael-shan/archive/2012/03/31/6649681.html

央视深入报道,国内主流芯片真实水平如何?

来源&#xff1a;芯师爷摘要&#xff1a; 站在风口上&#xff0c;猪都会飞&#xff01;——用这来概括当下国内芯片领域再恰当不过了。自中兴事件之后&#xff0c;很多创业者纷纷将商业计划的关键字调整为“芯片”。与此同时&#xff0c;投资者也将目光转移至AI芯片、自动驾驶芯…

渗透测试 ( 6 ) --- SQL 注入神器 sqlmap

sqlmap 官网&#xff1a;http://sqlmap.org/ sqlmap文档地址&#xff1a;https://github.com/sqlmapproject/sqlmap/wiki/Usage sqlmap 使用 思维导图&#xff1a;http://download.csdn.net/detail/freeking101/9887831 黑帽与白帽都喜爱的十大SQL注入工具&#xff1a;http://…

美国研发出百万兆级计算机 Summit,“最强超算”竞争加剧

来源&#xff1a;36Kr摘要&#xff1a;史上最强计算机出现&#xff0c;美国开发出了世界上第一台百万兆级的计算机&#xff0c;超强的计算能力有望能解决更复杂的问题。上个月&#xff0c;美国能源部公布了世界上最快的超级计算机——Summit&#xff0c;整个美国为之庆祝。现在…

渗透测试 ( 7 ) --- 漏洞扫描工具 Nessus

Nessus 官网&#xff1a;https://www.tenable.com/products/nessus/nessus-professional 1、Nessus 简介、下载、安装 1.1 简 介 Nessus 是世界上很流行的漏洞扫描程序&#xff0c;全世界很多组织都有在使用它。该工具提供完整的电脑漏洞扫描服务&#xff0c;并随时更新其漏洞…

报告|中国智能音箱已入局全球市场,双重商业模式迅速扩张

来源&#xff1a;网易智能摘要&#xff1a;最近&#xff0c;全球知名创投研究机构CBInsights发布了有关中国智能音箱市场及业务模式的研究报告&#xff0c;这是其“中国人工智能”系列报告的第三部分。这份报告将目光转向低成本、高容量的智能音箱市场&#xff0c;探讨新的商业…

渗透测试 ( 8 ) --- Burp Suite Pro 官方文档

Burp Suite 官网 &#xff1a;https://portswigger.net/burp 官方文档&#xff1a;https://portswigger.net/burp/documentation/desktop 完整文档&#xff1a;https://portswigger.net/burp/documentation/contents Burp Suite 实战指南 &#xff1a;https://t0data.gitbooks…

人工智能恶意使用报告:预测、预防和缓解

来源&#xff1a;199IT互联网数据中心摘要&#xff1a;一份研究报告指出&#xff0c;人工智能的高速发展伴随着风险。不肖人士可能会使用这个技术发动全自动攻击&#xff0c;让自驾车失控、或把商业用无人机变成能够锁定目标的武器。一份研究报告指出&#xff0c;人工智能的高速…

渗透测试 ( 9 ) --- 社会工程攻击工具 setoolkit

github 地址&#xff1a;https://github.com/trustedsec/social-engineer-toolkit kali工具 -- setoolkit(克隆网站及利用)&#xff1a;https://blog.csdn.net/weixin_41489908/article/details/103851057 1、社会工程学概念 社会工程学通常以交谈、欺骗、假冒或口语等方式&am…

渗透测试 ( 10 ) --- 扫描 web目录、文件 (dirb、wfuzz、wpscan、nikto)

当使用一个工具扫描完成后&#xff0c;如果没发现漏洞&#xff0c;可以再使用其他 web 扫描工具再扫描下&#xff0c;因为每个工具可能侧重点不一样&#xff0c;扫描出来的漏洞就不一样。 敏感文件目录探测方法大全 常用后台 工具扫描 wfuzz dirseach web 爬虫 搜索引擎 文件路…

AI当道,媒体会被机器牵着鼻子走?

来源&#xff1a;猎云网摘要&#xff1a; 现如今&#xff0c;社交媒体平台、搜索引擎和内容聚合商&#xff0c;在很大程度上控制了不同媒体内容的用户流向&#xff0c;从而直接影响了创作出来供大家消费的新闻内容。自此&#xff0c;有人认为&#xff0c;新闻媒体的未来再也无法…

MOON.ORM 3.5 MYSQL的配置及使用方法(最新版免费下载使用.欢迎加盟)

下载代码生成器 /Files/humble/Moon.ORM-3.6.zip配置大码生成器的配置文件.http://www.mysql.com/downloads/mirror.php?id406542 mysql 2.0下载地址通过代码生成器,生成你系统数据库中所有的实体.(编译Mode,然后在C盘找到 MoonDB.CS 或者 MoonDB.DLL,引入dll或者文件到你…

政府大数据应用的反思;大数据分析应用常见的困难

来源&#xff1a;网络大数据摘要&#xff1a;在智慧城市建设中&#xff0c;以支持政府决策为名的大数据中心建设如火如荼&#xff0c;但利用大数据改进决策的成功案例却鲜有&#xff0c;与大数据中心的投资不成比例&#xff0c;令人质疑大数据中心遍地开花模式的合理性。一、政…

thinkphp 官网教程

thinkphp 官网教程&#xff1a;https://sites.thinkphp.cn/1556331 thikphp5 框架详解 ​ThinkPHP5 - 从入门到实践&#xff08;完整版&#xff09;&#xff1a;https://www.bilibili.com/video/BV13a4y1E7dyThinkPHP5.0 框架全方位解读与实战&#xff1a;https://github.com/k…

中美研发创新支持政策比较及建议

来源&#xff1a;全球技术地图近40年以来&#xff0c;美国历届政府对科技创新和企业研发都高度重视&#xff0c;并通过税收优惠、研发资金支持等全方位支持企业创新&#xff0c;有效推动科技类产业发展。相比之下&#xff0c;我国的研发支持发展较晚&#xff0c;不过目前已经形…

uni-app 官网教程

官网&#xff1a;https://uniapp.dcloud.net.cn/ github &#xff1a;https://github.com/dcloudio/uni-app uni-app 入门教程&#xff1a;https://www.5axxw.com/wiki/content/41fkvm ​uniapp 可视化开发 --- 前端开发工具、组件库集合&#xff1a;https://blog.csdn.net/w…

量子计算时代更近了,未来可解决大规模计算的科学难题

来源&#xff1a;人民日报摘要&#xff1a;借助量子计算的并行性带来指数级的加速&#xff0c;将能远远超越现有经典计算机的速度。当量子计算时代到来时&#xff0c;利用GHz时钟频率的量子计算机求解一个亿亿亿变量的线性方程组&#xff0c;将只需要10秒钟。5光量子比特纠缠、…