标签:使用 sp strong on 问题 bs nbsp 没有 实例
信号量的取值可以为0(表示没有保存下来的唤醒操作),可以为正值(表示有一个或者多个唤醒操作)。
两个操作:down操作:若该值大于0,将其值减1(即用掉一个保存的唤醒信号);若该值为0,则进程将睡眠,并且down操作并未结束!检查数值,修改变量值以及可能发生的睡眠操作均作为一个单一的,不可分割的原子操作完成。保证一旦一个信号量操作开始,则在该操作完成或者阻塞之前,其他进程均不允许访问该信号量。所谓原子操作,是指一组相关联的操作要么都不间断地执行,要么都不执行
Dijkstra原来的论文中,他分别使用名称是P和V而不是down和up
信号量的实例:
用信号量解决生产者-消费者问题
标签:使用 sp strong on 问题 bs nbsp 没有 实例
原文地址:http://www.cnblogs.com/lovejin/p/4168084.html