ReentrantSemaphore.ExecuteAsync メソッド

定義

オーバーロード

ExecuteAsync(Func<Task>, CancellationToken)

セマフォ内の指定された操作を実行します。

ExecuteAsync<T>(Func<ValueTask<T>>, CancellationToken)

セマフォ内の指定された操作を実行します。

ExecuteAsync(Func<Task>, CancellationToken)

セマフォ内の指定された操作を実行します。

public abstract System.Threading.Tasks.Task ExecuteAsync (Func<System.Threading.Tasks.Task> operation, System.Threading.CancellationToken cancellationToken = default);
abstract member ExecuteAsync : Func<System.Threading.Tasks.Task> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public MustOverride Function ExecuteAsync (operation As Func(Of Task), Optional cancellationToken As CancellationToken = Nothing) As Task

パラメーター

operation
Func<Task>

セマフォが入力された後に呼び出すデリゲート。 がコンストラクターに渡された場合、メインスレッドでこのデリゲートが呼び出されると、メインスレッド JoinableTaskContext でこのデリゲートが実行されます。それ以外の場合は、threadpool で呼び出されます。 JoinableTaskContextコンストラクターにが指定されていない場合、このデリゲートは呼び出し元のコンテキストで実行されます。

cancellationToken
CancellationToken

キャンセル トークン。

戻り値

Task

operationセマフォが終了した後、の結果で完了するタスク。

適用対象

ExecuteAsync<T>(Func<ValueTask<T>>, CancellationToken)

セマフォ内の指定された操作を実行します。

public abstract System.Threading.Tasks.ValueTask<T>? ExecuteAsync<T> (Func<System.Threading.Tasks.ValueTask<T>>? operation, System.Threading.CancellationToken cancellationToken = default);
abstract member ExecuteAsync : Func<System.Threading.Tasks.ValueTask<'T>> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
Public MustOverride Function ExecuteAsync(Of T) (operation As Func(Of ValueTask(Of T)), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of T)

型パラメーター

T

操作によって返される値の型。

パラメーター

operation
Func<ValueTask<T>>

セマフォが入力された後に呼び出すデリゲート。 がコンストラクターに渡された場合、メインスレッドでこのデリゲートが呼び出されると、メインスレッド JoinableTaskContext でこのデリゲートが実行されます。それ以外の場合は、threadpool で呼び出されます。 JoinableTaskContextコンストラクターにが指定されていない場合、このデリゲートは呼び出し元のコンテキストで実行されます。

cancellationToken
CancellationToken

キャンセル トークン。

戻り値

ValueTask<T>

operationセマフォが終了した後、の結果で完了するタスク。

適用対象