二元信号量、互斥量和临界区之间的区别

☆樱花仙子☆ 提交于 2019-12-10 04:05:52

二元信号量

  是最简单的一种锁,适合只能被唯一一个线程独占访问的资源;对于允许多个线程并发访问的资源,多元信号量简称信号量;

互斥量

  和二元信号量很类似,资源仅同时允许一个线程访问,但和信号量不同的是,信号量在整个系统可以被任意线程获取并释放;也就是说哪个线程锁的,要哪个线程解锁。

临界区

  是比互斥量更加严格的同步手段。在术语中,把临界区的获取称为进入临界区,而把锁的释放称为离开临界区。与互斥量和信号量的区别:

  (1)互斥量和信号量字系统的任何进程都是可见的。

  (2)临界区的作用范围仅限于本进程,其他进程无法获取该锁。  

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!