相关疑难解决方法(0)

在.NET中锁定(监视)内部实现

掌握某些技术时,你必须知道它是如何在一个抽象级别下制作的.在多线程编程的情况下,了解同步原语将是很好的.
这是一个问题,如何在.NET中实现Lock(Monitor)?

我对以下几点感兴趣:
- 它是否使用OS对象?
- 是否需要用户模式或内核模式?
- 等待锁定的线程的开销是多少?
- 在什么情况下,等待锁的线程队列可能会被违反?

更新:
"如果有多个线程争用锁定,它们会在"就绪队列"上排队,并按照先到先得的原则授予锁定.注意:Windows和CLR行为的细微差别意味着有时会违反队列的公平性. "[C#4.0 in a Nutshell,Joseph Albahari]所以这就是我在关于'违规队列'的最后一个问题中所要求的.

.net c# multithreading synchronization monitor

33
推荐指数
2
解决办法
9919
查看次数

标签 统计

.net ×1

c# ×1

monitor ×1

multithreading ×1

synchronization ×1