信号量(semaphore)和互斥量(mutex)
2011-04-01 22:21 会被淹死的鱼 阅读(680) 评论(0) 编辑 收藏 举报最近学习多线程编程的时候, 遇到了信号量和互斥量的问题.
信号量(Semaphore)是通过一个计数器控制对共享资源的访问.
互斥量(Mutex)是用于线程的互斥, 信号量是用于线程的同步.
互斥是指某一资源同时只允许一个访问者对其进行访问, 具有唯一性和排它性. 但互斥无法限制访问者对资源的访问顺序, 即访问是无序的.
同步是在互斥的基础上(大多数情况), 通过其他机制实现访问者对资源的有序访问. 在大多数情况下, 同步已实现了互斥, 特别是所有写入资源的情况必定是互斥的.
作者:icejoywoo
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
短网址: http://goo.gl/ZiZCi