ReentrantSemaphore.ExecuteAsync Метод

Определение

Перегрузки

ExecuteAsync(Func<Task>, CancellationToken)

Выполняет заданную операцию в семафоре.Executes a given operation within the semaphore.

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

Выполняет заданную операцию в семафоре.Executes a given operation within the semaphore.

ExecuteAsync(Func<Task>, CancellationToken)

Выполняет заданную операцию в семафоре.Executes a given operation within the semaphore.

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>

Делегат, вызываемый после ввода семафора.The delegate to invoke once the semaphore is entered. Если объект JoinableTaskContext был предоставлен конструктору, этот делегат будет выполняться в основном потоке, если он вызывается в основном потоке, в противном случае он будет вызван в ThreadPool.If a JoinableTaskContext was supplied to the constructor, this delegate will execute on the main thread if this is invoked on the main thread, otherwise it will be invoked on the threadpool. Если конструктору не присвоено значение JoinableTaskContext , этот делегат будет выполняться в контексте вызывающего объекта.When no JoinableTaskContext is supplied to the constructor, this delegate will execute on the caller's context.

cancellationToken
CancellationToken

Токен отмены.A cancellation token.

Возвращаемое значение

Task

Задача, которая завершается с результатом operation , после завершения работы семафора.A task that completes with the result of operation, after the semaphore has been exited.

Применяется к

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

Выполняет заданную операцию в семафоре.Executes a given operation within the semaphore.

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

Тип значения, возвращаемого операцией.The type of value returned by the operation.

Параметры

operation
Func<ValueTask<T>>

Делегат, вызываемый после ввода семафора.The delegate to invoke once the semaphore is entered. Если объект JoinableTaskContext был предоставлен конструктору, этот делегат будет выполняться в основном потоке, если он вызывается в основном потоке, в противном случае он будет вызван в ThreadPool.If a JoinableTaskContext was supplied to the constructor, this delegate will execute on the main thread if this is invoked on the main thread, otherwise it will be invoked on the threadpool. Если конструктору не присвоено значение JoinableTaskContext , этот делегат будет выполняться в контексте вызывающего объекта.When no JoinableTaskContext is supplied to the constructor, this delegate will execute on the caller's context.

cancellationToken
CancellationToken

Токен отмены.A cancellation token.

Возвращаемое значение

ValueTask<T>

Задача, которая завершается с результатом operation , после завершения работы семафора.A task that completes with the result of operation, after the semaphore has been exited.

Применяется к