Monitor 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
提供同步访问对象的机制。
public ref class Monitor abstract sealed
public ref class Monitor sealed
public static class Monitor
public sealed class Monitor
[System.Runtime.InteropServices.ComVisible(true)]
public static class Monitor
type Monitor = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type Monitor = class
Public Class Monitor
Public NotInheritable Class Monitor
- 继承
-
Monitor
- 属性
注解
有关此 API 的详细信息,请参阅 Monitor 的补充 API 备注。
属性
LockContentionCount |
获取尝试锁定监视器时出现争用的次数。 |
方法
Enter(Object) |
在指定对象上获取排他锁。 |
Enter(Object, Boolean) |
获取指定对象上的排他锁,并自动设置一个值,指示是否获取了该锁。 |
Exit(Object) |
释放指定对象上的排他锁。 |
IsEntered(Object) |
确定当前线程是否保留指定对象上的锁。 |
Pulse(Object) |
通知等待队列中的线程锁定对象状态的更改。 |
PulseAll(Object) |
通知所有的等待线程对象状态的更改。 |
TryEnter(Object) |
尝试获取指定对象的排他锁。 |
TryEnter(Object, Boolean) |
尝试获取指定对象上的排他锁,并自动设置一个值,指示是否获取了该锁。 |
TryEnter(Object, Int32) |
在指定的毫秒数内尝试获取指定对象上的排他锁。 |
TryEnter(Object, Int32, Boolean) |
在指定的毫秒数内尝试获取指定对象上的排他锁,并自动设置一个值,指示是否获取了该锁。 |
TryEnter(Object, TimeSpan) |
在指定的时间内尝试获取指定对象上的排他锁。 |
TryEnter(Object, TimeSpan, Boolean) |
在指定的一段时间内尝试获取指定对象上的排他锁,并自动设置一个值,指示是否获得了该锁。 |
Wait(Object) |
释放对象上的锁并阻止当前线程,直到它重新获取该锁。 |
Wait(Object, Int32) |
释放对象上的锁并阻止当前线程,直到它重新获取该锁。 如果已用指定的超时时间间隔,则线程进入就绪队列。 |
Wait(Object, Int32, Boolean) |
释放对象上的锁并阻止当前线程,直到它重新获取该锁。 如果已用指定的超时时间间隔,则线程进入就绪队列。 此方法还指定是否在等待之前退出上下文的同步域(如果在同步上下文中)然后重新获取该同步域。 |
Wait(Object, TimeSpan) |
释放对象上的锁并阻止当前线程,直到它重新获取该锁。 如果已用指定的超时时间间隔,则线程进入就绪队列。 |
Wait(Object, TimeSpan, Boolean) |
释放对象上的锁并阻止当前线程,直到它重新获取该锁。 如果已用指定的超时时间间隔,则线程进入就绪队列。 可以在等待之前退出同步上下文的同步域,随后重新获取该域。 |
适用于
线程安全性
此类型是线程安全的。