|
|
1
23
每次使用锁定原语时,例如
由于这些块在可存储内容方面受到限制,因此同时访问这些块会导致争用,从而导致对象头的内容成为CLR管理的系统范围同步块表的索引。当对象需要这些同步块时,clr能够回收它们。 在等待系统内核对象之前,锁定对象总是导致CPU旋转。每当分配的CPU自旋不满足允许监视器获取关键段锁的要求时,将创建一个系统自动重置事件句柄,并将对其的引用放入相关的同步块中。等待此事件句柄的其他线程将阻塞事件句柄,直到拥有的线程触发事件句柄的释放。 因此,如果此计数器不断增加,则表明有太多线程正在争夺一个或多个对象上的锁,并且这些锁可能永远不会被释放。 |