【发布时间】:2014-02-17 04:17:25
【问题描述】:
我有两个大小为 10 的信号量。这两个信号量是互斥的,这样:
最初这两个信号量是空的。如果其中一个信号量有内容,它会阻塞另一个信号量,使其不能被内容填充。只有当原始信号量被清空时,它才会解除阻塞另一个信号量。然后这个过程继续。
在编程意义上,如果一个信号量有内容,另一个信号量就会被内核阻塞。我将如何实施这样的锁?
【问题讨论】:
-
信号量被解释为资源计数器。你想要一个奇怪的资源,当它存在时,其他资源不能添加到池中。你最好不用信号量来解释你的任务,只用资源或消息之类的术语。
标签: concurrency semaphore