信息
您所需的主题如下所示。但此主题未包含在此库中。

ManualResetEventSlim 类

2013/12/13

提供 ManualResetEvent 的简化版本。

System.Object
  System.Threading.ManualResetEventSlim

Namespace:  System.Threading
程序集:  mscorlib(位于 mscorlib.dll 中)

public class ManualResetEventSlim : IDisposable

ManualResetEventSlim 类型公开以下成员。

  名称说明
公共方法ManualResetEventSlim()使用无信号初始状态初始化 ManualResetEventSlim 类的新实例。
公共方法ManualResetEventSlim(Boolean)用一个指示是否将初始状态设置为终止的布尔值初始化 ManualResetEventSlim 类的新实例。
公共方法ManualResetEventSlim(Boolean, Int32)使用一个指示是否将初始状态设置为有信号和指定自旋计数的布尔值初始化 ManualResetEventSlim 类的新实例。
返回顶部

  名称说明
公共属性IsSet获取是否设置了事件。
公共属性SpinCount获取在回退到基于内核的等待操作之前发生的自旋等待数量。
公共属性WaitHandle获取此 ManualResetEventSlim 的基础 WaitHandle 对象。
返回顶部

  名称说明
公共方法Dispose()释放由 ManualResetEventSlim 类的当前实例使用的所有资源。
受保护的方法Dispose(Boolean)释放由 ManualResetEventSlim 占用的非托管资源,还可以另外再释放托管资源。
公共方法Equals(Object)确定指定的 Object 是否等于当前的 Object (从 Object 继承。)
受保护的方法Finalize允许 Object 在垃圾回收器回收该对象之前尝试释放资源并执行其他清理操作。 (从 Object 继承。)
公共方法GetHashCode用作特定类型的哈希函数。 (从 Object 继承。)
公共方法GetType获取当前实例的 Type (从 Object 继承。)
受保护的方法MemberwiseClone创建当前 Object 的浅表副本。 (从 Object 继承。)
公共方法Reset将事件状态设置为非终止状态,从而导致线程受阻。
公共方法Set将事件状态设置为有信号,从而允许一个或多个等待该事件的线程继续。
公共方法ToString返回一个字符串,它表示当前的对象。 (从 Object 继承。)
公共方法Wait()阻止当前线程,直到设置了当前 ManualResetEventSlim 为止。
公共方法Wait(CancellationToken)阻止当前线程,直到当前 ManualResetEventSlim 收到信号为止,同时观察 CancellationToken
公共方法Wait(Int32)阻止当前线程,直到设置了当前 ManualResetEventSlim 为止,同时使用 32 位有符号整数测量时间间隔。
公共方法Wait(TimeSpan)阻止当前线程,直到设置了当前 ManualResetEventSlim 为止,同时使用 TimeSpan 测量时间间隔。
公共方法Wait(Int32, CancellationToken)阻止当前线程,直到设置了当前 ManualResetEventSlim 为止,并使用 32 位有符号整数测量时间间隔,同时观察 CancellationToken
公共方法Wait(TimeSpan, CancellationToken)阻止当前线程,直到设置了当前 ManualResetEventSlim 为止,并使用 TimeSpan 测量时间间隔,同时观察 CancellationToken
返回顶部

下面的示例演示如何使用 ManualResetEventSlim。有关使用 SpinCount 和有关此类型的使用的其他最佳做法,请参见[465fdcf9-ba24-4d8d-a43f-d983b7cb0cc6]

Windows Phone OS

受以下版本支持: 8.0

ManualResetEventSlim 的所有公共和受保护的成员是线程安全的,并且可以同时从多个线程使用,Dispose 和 Reset 除外,Dispose 只有当 ManualResetEventSlim 上的所有其他操作都完成后才能使用,Reset 只有当没有其他线程访问事件时才能使用。

显示: