#region 程序集 mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
// C:Program Files (x86)Reference AssembliesMicrosoftFramework.NETFrameworkv4.5mscorlib.dll
#endregion
using System.Diagnostics;
using System.Runtime;
using System.Runtime.InteropServices;
namespace System.Threading
{
//
// 摘要:
// 传播有关应取消操作的通知。
[ComVisible(false)]
[DebuggerDisplay("IsCancellationRequested = {IsCancellationRequested}")]
public struct CancellationToken
{
//
// 摘要:
// 初始化 System.Threading.CancellationToken。
//
// 参数:
// canceled:
// 标记的已取消状态。
public CancellationToken(bool canceled);
//
// 摘要:
// 返回空 CancellationToken 值。
//
// 返回结果:
// 返回空 CancellationToken 值。
public static CancellationToken None { get; }
//
// 摘要:
// 获取是否已请求取消此标记。
//
// 返回结果:
// 如果已请求取消此标记,则为 true;否则为 false。
public bool IsCancellationRequested { get; }
//
// 摘要:
// 获取此标记是否能处于已取消状态。
//
// 返回结果:
// 如果此标记能处于已取消状态,则为 true;否则为 false。
public bool CanBeCanceled { get; }
//
// 摘要:
// 获取在取消标记时处于有信号状态的 System.Threading.WaitHandle。
//
// 返回结果:
// 在取消标记时处于有信号状态的 System.Threading.WaitHandle。
//
// 异常:
// T:System.ObjectDisposedException:
// 关联的 System.Threading.CancellationTokenSource 已被释放。
public WaitHandle WaitHandle { get; }
//
// 摘要:
// 确定当前 System.Threading.CancellationToken 实例是否与指定标记相等。
//
// 参数:
// other:
// 要与此实例进行比较的其他 System.Threading.CancellationToken。
//
// 返回结果:
// 如果实例相等,则为 true;否则为 false。 如果两个标记与同一 System.Threading.CancellationTokenSource
// 关联,或者它们均是根据公共 CancellationToken 构造函数构造并且其 System.Threading.CancellationToken.IsCancellationRequested
// 值相等,则两个标记相等。
public bool Equals(CancellationToken other);
//
// 摘要:
// 确定当前 System.Threading.CancellationToken 实例是否与指定 System.Object 相等。
//
// 参数:
// other:
// 要与此实例进行比较的其他对象。
//
// 返回结果:
// 如果 other 为 System.Threading.CancellationToken 并且两个实例相等,则为 true;否则为 false。 如果两个标记与同一
// System.Threading.CancellationTokenSource 关联,或者它们均是根据公共 CancellationToken 构造函数构造并且其
// System.Threading.CancellationToken.IsCancellationRequested 值相等,则两个标记相等。
//
// 异常:
// T:System.ObjectDisposedException:
// 已释放关联的 System.Threading.CancellationTokenSource。
public override bool Equals(object other);
//
// 摘要:
// 作为 System.Threading.CancellationToken 的哈希函数。
//
// 返回结果:
// 当前 System.Threading.CancellationToken 实例的哈希代码。
public override int GetHashCode();
//
// 摘要:
// 注册一个将在取消此 System.Threading.CancellationToken 时调用的委托。
//
// 参数:
// callback:
// 要在取消 System.Threading.CancellationToken 时执行的委托。
//
// 返回结果:
// 可用于取消注册回调的 System.Threading.CancellationTokenRegistration 实例。
//
// 异常:
// T:System.ObjectDisposedException:
// 关联的 System.Threading.CancellationTokenSource 已被释放。
//
// T:System.ArgumentNullException:
// callback 为 null。
public CancellationTokenRegistration Register(Action callback);
//
// 摘要:
// 注册一个将在取消此 System.Threading.CancellationToken 时调用的委托。
//
// 参数:
// callback:
// 要在取消 System.Threading.CancellationToken 时执行的委托。
//
// useSynchronizationContext:
// 一个布尔值,该值指示是否捕获当前 System.Threading.SynchronizationContext 并在调用 callback 时使用它。
//
// 返回结果:
// 可用于取消注册回调的 System.Threading.CancellationTokenRegistration 实例。
//
// 异常:
// T:System.ObjectDisposedException:
// 关联的 System.Threading.CancellationTokenSource 已被释放。
//
// T:System.ArgumentNullException:
// callback 为 null。
public CancellationTokenRegistration Register(Action callback, bool useSynchronizationContext);
//
// 摘要:
// 注册一个将在取消此 System.Threading.CancellationToken 时调用的委托。
//
// 参数:
// callback:
// 要在取消 System.Threading.CancellationToken 时执行的委托。
//
// state:
// 要在调用委托时传递给 callback 的状态。 这可能为 null。
//
// 返回结果:
// 可用于取消注册回调的 System.Threading.CancellationTokenRegistration 实例。
//
// 异常:
// T:System.ObjectDisposedException:
// 关联的 System.Threading.CancellationTokenSource 已被释放。
//
// T:System.ArgumentNullException:
// callback 为 null。
public CancellationTokenRegistration Register(Action<object> callback, object state);
//
// 摘要:
// 注册一个将在取消此 System.Threading.CancellationToken 时调用的委托。
//
// 参数:
// callback:
// 要在取消 System.Threading.CancellationToken 时执行的委托。
//
// state:
// 要在调用委托时传递给 callback 的状态。 这可能为 null。
//
// useSynchronizationContext:
// 一个布尔值,该值指示是否捕获当前 System.Threading.SynchronizationContext 并在调用 callback 时使用它。
//
// 返回结果:
// 可用于取消注册回调的 System.Threading.CancellationTokenRegistration 实例。
//
// 异常:
// T:System.ObjectDisposedException:
// 关联的 System.Threading.CancellationTokenSource 已被释放。
//
// T:System.ArgumentNullException:
// callback 为 null。
public CancellationTokenRegistration Register(Action<object> callback, object state, bool useSynchronizationContext);
//
// 摘要:
// 如果已请求取消此标记,则引发 System.OperationCanceledException。
//
// 异常:
// T:System.OperationCanceledException:
// 该标记已请求取消。
//
// T:System.ObjectDisposedException:
// 关联的 System.Threading.CancellationTokenSource 已被释放。
[TargetedPatchingOptOut("Performance critical to inline across NGen image boundaries")]
public void ThrowIfCancellationRequested();
//
// 摘要:
// 确定两个 System.Threading.CancellationToken 实例是否相等。
//
// 参数:
// left:
// 第一个实例。
//
// right:
// 第二个实例。
//
// 返回结果:
// 如果实例相等,则为 true;否则为 false。
//
// 异常:
// T:System.ObjectDisposedException:
// 已释放关联的 System.Threading.CancellationTokenSource。
public static bool operator ==(CancellationToken left, CancellationToken right);
//
// 摘要:
// 确定两个 System.Threading.CancellationToken 实例是否不相等。
//
// 参数:
// left:
// 第一个实例。
//
// right:
// 第二个实例。
//
// 返回结果:
// 如果实例不相等,则为 true;否则为 false。
//
// 异常:
// T:System.ObjectDisposedException:
// 已释放关联的 System.Threading.CancellationTokenSource。
public static bool operator !=(CancellationToken left, CancellationToken right);
}
}