![]() |
1
17
你不应该关心下一个锁是谁拿的。 |
![]() |
2
5
你的问题意味着你在寻找一种先进先出的行为?然后,您可能希望通过jakub sloop尝试此代码: Monitor/lock which remember order in C# to simulate FIFO 正如其他答案中已经提到的,没有保证等待线程将收到锁的顺序。 |
![]() |
3
4
假设它类似于win32,那么答案是它可能是fifo,但它可能不是(它是其他东西)。例如,一个更高优先级的线程应该是第一个;但是线程的优先级可能会临时提高或降低,这取决于它们最近所做的工作。 |
![]() |
4
4
作为您问题的答案,所有线程都会收到monitor.pulse,然后为下一个获得锁的人而斗争。 我相信Wintelect的人写了一篇关于这种行为如何导致不公平情况的博客,但是在监视器中根本没有公平。 |
![]() |
5
3
答案从定义上来说是不确定的。 |
![]() |
a a · 为什么在这个可重入锁示例中需要引用计数? 3 年前 |
![]() |
JohnLBevan · 为什么原子语句上需要锁提示? 7 年前 |
![]() |
Jay Wang · 生产者/消费者实施:陷入消费者循环 7 年前 |
![]() |
Andremoniy · 悲观写入是否锁定整个表? 7 年前 |
![]() |
Marcus Cemes · 选择。。。用于更新在提交后选择旧数据 7 年前 |
![]() |
Ins0maniac · Rails,锁定数据库中的记录 7 年前 |