.NET Semaphore类的documentation表示:
没有保证订单,例如FIFO或LIFO,其中被阻止的线程进入信号量。
在这种情况下,如果我想要保证订单(FIFO或LIFO),我的选择是什么?这是不容易实现的事情吗?我必须写自己的信号量吗?我认为那会非常先进吗?
谢谢,
史蒂夫
答案 0 :(得分:6)
请参阅this:
FifoSemaphore
的工作原理与普通Semaphore
完全相同,但也保证令牌按照他们设法获取内部锁定的顺序提供给收单机构。FifoSemaphore
的使用与Semaphore
相同。