信号量在整个系统可以被任意线程获取并释放,也就是说,同一个信号量可以被系统中的一个线程获取之后由另一个线程释放。而互斥量则要求哪个线程获取了互斥量,哪个线程就要负责释放,其它线程去释放互斥量是无效的。
互斥量和信号量在系统的任何进程里都是可见的,也就是说,一个进程创建了一个信号量或互斥量,另一个进程试图去获取该锁是合法的。然而,临界区的作用范围仅限于本进程,其它进程无法获取该锁。除此之外,临界区具有和互斥量相同的性质。
信号量在整个系统可以被任意线程获取并释放,也就是说,同一个信号量可以被系统中的一个线程获取之后由另一个线程释放。而互斥量则要求哪个线程获取了互斥量,哪个线程就要负责释放,其它线程去释放互斥量是无效的。
互斥量和信号量在系统的任何进程里都是可见的,也就是说,一个进程创建了一个信号量或互斥量,另一个进程试图去获取该锁是合法的。然而,临界区的作用范围仅限于本进程,其它进程无法获取该锁。除此之外,临界区具有和互斥量相同的性质。