摘要: 使用方法: 1、创建一个互斥器:CreateMutex; 2、打开一个已经存在的互斥器:OpenMutex; 3、获得互斥器的拥有权:WaitForSingleObject、WaitForMultipleObjects 等一类等待的函数……(可能造成阻塞); 4、释放互斥器的拥有权... 阅读全文
posted @ 2014-04-14 20:24 执迷不悟~ 阅读(20910) 评论(0) 推荐(1)
摘要: 关键区域(CriticalSection)临界区是为了确保同一个代码片段在同一时间只能被一个线程访问,与原子锁不同的是临界区是多条指令的锁定,而原子锁仅仅对单条操作指令有效;临界区和原子锁只能控制同一个进程中线程的同步使用方法:1、初始化:InitializeCriticalSection; 2、删... 阅读全文
posted @ 2014-04-14 18:53 执迷不悟~ 阅读(3542) 评论(0) 推荐(1)
摘要: 原子锁:当多个线程同时对同一资源进行操作时,由于线程间资源的抢占,会导致操作的结果丢失或者不是我们预期的结果。比如:线程A对一个变量进行var++操作,线程B也执行var++操作,当线程A执行var++时,如果线程切换时间恰好是线程A将结果存在var变量之前,那么线程B继续执行var++;此时假设v... 阅读全文
posted @ 2014-04-14 15:47 执迷不悟~ 阅读(2993) 评论(0) 推荐(0)