Język

TplExtensions.ToTask(WaitHandle, Int32, CancellationToken) Metoda

Definicja

Tworzy zadanie TPL, które jest zwracane true , gdy WaitHandle element jest zasygnalizowany lub zwraca false , jeśli pierwszy limit czasu wystąpi.

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)

Parametry

handle
WaitHandle

Uchwyt, którego sygnał wyzwala zadanie do ukończenia. Nie należy używać elementu Mutex tutaj.

timeout
Int32

Limit czasu (w milisekundach), po którym zadanie zwróci false , jeśli dojście nie zostanie zasygnalizowane przez ten czas.

cancellationToken
CancellationToken

Token, którego anulowanie spowoduje natychmiastowe ukończenie zwróconego zadania w stanie anulowanym.

Zwraca

Zadanie, które kończy się, gdy dojście jest zasygnalizowane lub upłynął limit czasu lub gdy token anulowania elementu wywołującego zostanie anulowany. Jeśli zadanie zostanie ukończone, ponieważ uchwyt jest zasygnalizowany, wynik zadania to true. Jeśli zadanie zostanie ukończone, ponieważ uchwyt nie jest zasygnalizowany przed przekroczeniem limitu czasu, wynikiem zadania jest false.

Uwagi

Ukończenie zwróconego zadania jest asynchroniczne w odniesieniu do kodu, który faktycznie sygnalizuje uchwyt oczekiwania.

Dotyczy