保证信号量顺序?

时间:2010-03-31 14:56:40

标签: c# .net multithreading asynchronous semaphore

.NET Semaphore类的documentation表示:

  

没有保证订单,例如FIFO或LIFO,其中被阻止的线程进入信号量。

在这种情况下,如果我想要保证订单(FIFO或LIFO),我的选择是什么?这是不容易实现的事情吗?我必须写自己的信号量吗?我认为那会非常先进吗?

谢谢,

史蒂夫

1 个答案:

答案 0 :(得分:6)

请参阅this

  

FifoSemaphore的工作原理与普通Semaphore完全相同,但也保证令牌按照他们设法获取内部锁定的顺序提供给收单机构。 FifoSemaphore的使用与Semaphore相同。