TplExtensions.ToTask(WaitHandle, Int32, CancellationToken) 方法

定义

创建一个 TPL 任务,该任务在发出信号时WaitHandle返回true;如果首先发生超时,则返回 false

public static System.Threading.Tasks.Task<bool> ToTask (this System.Threading.WaitHandle handle, int timeout = -1, System.Threading.CancellationToken cancellationToken = default);
static member ToTask : System.Threading.WaitHandle * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
<Extension()>
Public Function ToTask (handle As WaitHandle, Optional timeout As Integer = -1, Optional cancellationToken As CancellationToken = Nothing) As Task(Of Boolean)

参数

handle
WaitHandle

其信号触发要完成的任务的句柄。 请勿在此处使用 Mutex

timeout
Int32

超时 (毫秒) 之后,如果该时间未发出句柄信号,则任务将返回 false

cancellationToken
CancellationToken

一个令牌,其取消将导致返回的任务立即以已取消状态完成。

返回

在发出句柄信号或超时或取消调用方取消令牌时完成的任务。 如果任务由于发出句柄信号而完成,则任务的结果为 true。 如果任务由于在超时之前未发出句柄信号而完成,则任务的结果为 false

注解

相对于实际向等待句柄发出信号的代码,返回的任务的完成是异步的。

适用于