共用方式為


DbExecutionStrategy.ExecuteAsync 方法

定義

多載

ExecuteAsync(Func<Task>, CancellationToken)

重複執行指定的非同步作業,同時滿足目前的重試原則。

ExecuteAsync<TResult>(Func<Task<TResult>>, CancellationToken)

重複執行指定的非同步作業,同時滿足目前的重試原則。

ExecuteAsync(Func<Task>, CancellationToken)

重複執行指定的非同步作業,同時滿足目前的重試原則。

public System.Threading.Tasks.Task ExecuteAsync(Func<System.Threading.Tasks.Task> operation, System.Threading.CancellationToken cancellationToken);
abstract member ExecuteAsync : Func<System.Threading.Tasks.Task> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
override this.ExecuteAsync : Func<System.Threading.Tasks.Task> * System.Threading.CancellationToken -> System.Threading.Tasks.Task

參數

operation
Func<Task>

傳回已啟動工作的函式。

cancellationToken
CancellationToken

用來取消重試作業的取消權杖,但不是已在正式發行前小眾測試版或成功完成的作業。

傳回

如果原始 (工作第一次或重試暫時性失敗之後,第一次或重試暫時) 性失敗之後,就會執行至完成的工作。 如果工作失敗且發生非暫時性錯誤或達到重試限制,則傳回的工作將會發生錯誤,而且必須觀察到例外狀況。

實作

例外狀況

如果重試延遲策略決定作業不應再重試,則為

如果這個實例已經用來執行作業,則為

適用於

ExecuteAsync<TResult>(Func<Task<TResult>>, CancellationToken)

重複執行指定的非同步作業,同時滿足目前的重試原則。

[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
public System.Threading.Tasks.Task<TResult> ExecuteAsync<TResult>(Func<System.Threading.Tasks.Task<TResult>> operation, System.Threading.CancellationToken cancellationToken);
abstract member ExecuteAsync : Func<System.Threading.Tasks.Task<'Result>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
override this.ExecuteAsync : Func<System.Threading.Tasks.Task<'Result>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>

類型參數

TResult

operation 回的結果 Task<TResult> 型別。

參數

operation
Func<Task<TResult>>

函式,傳回 型 TResult 別 為 的已啟動工作。

cancellationToken
CancellationToken

用來取消重試作業的取消權杖,但不是已在正式發行前小眾測試版或成功完成的作業。

傳回

Task<TResult>

如果原始 (工作第一次或重試暫時性失敗之後,第一次或重試暫時) 性失敗之後,就會執行至完成的工作。 如果工作失敗且發生非暫時性錯誤或達到重試限制,則傳回的工作將會發生錯誤,而且必須觀察到例外狀況。

實作

屬性

例外狀況

如果重試延遲策略決定作業不應再重試,則為

如果這個實例已經用來執行作業,則為

適用於