用户模式同步之互斥体小解

Posted _Flame

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用户模式同步之互斥体小解相关的知识,希望对你有一定的参考价值。


1.互斥体(互斥体类似于同步事件)
互斥体可避免多个线程争夺一个资源的问题,多线程环境下,如果一个线程获得互斥体,不释放的话其他的线程就获得不了该资源
它与同步事件的区别:
是在同一个线程内它可以递归获得互斥体,也就是这个线程获得互斥体后对再次去获得认可不排斥,同步我们显而易见的得知不允许这样
他有激发未激发两种状态,记住!!!获得互斥体是未激发状态,释放互斥体是激发状态,他和信号量区别清楚
同样使用它首先要初始化;CreateMutex(SECURITY,BOOL(是否被占有),LPCTSTR(name)),获得互斥体的函数是WAIT系列的等待函数
ReleaseMutex是释放互斥体
第二参数为FALSE是没有占有,是激发状态,反之为未激发状态
记住是在一个互斥体被一个线程获得后必须释放才能下一个获得和自旋锁原理一样

2. 对于等待函数的解释

 

以上是关于用户模式同步之互斥体小解的主要内容,如果未能解决你的问题,请参考以下文章

用户模式同步之信号量小解

C ++的用户模式同步库[关闭]

Windows系统编程C/C++--互斥量

Windows系统编程C/C++--互斥量

Windows系统编程C/C++--互斥量

线程与进程