StatefulServiceBase.RunAsync(CancellationToken) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
このメソッドは処理ループとして実装され、レプリカが書き込み状態のプライマリである場合にのみ呼び出されます。 このメソッドをアプリケーション ロジックでオーバーライドします。
Reliable Services のライフ サイクルの詳細については、以下を参照してください。 https://docs.microsoft.com/azure/service-fabric/service-fabric-reliable-services-lifecycle
protected virtual System.Threading.Tasks.Task RunAsync (System.Threading.CancellationToken cancellationToken);
abstract member RunAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task
override this.RunAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task
Protected Overridable Function RunAsync (cancellationToken As CancellationToken) As Task
パラメーター
- cancellationToken
- CancellationToken
取り消し要求を監視するキャンセル トークン。
戻り値
未処理の操作を表す Task 。
注釈
をオーバーライドするときは、次のガイドラインに RunAsync(CancellationToken)従ってください。
- にRunAsync(CancellationToken)渡された が受け入れられ、シグナルが送信されると、RunAsync(CancellationToken)できるだけ早く正常に終了することを確認
cancellationToken
します。 意図した作業が完了した場合 RunAsync(CancellationToken) 、シグナルが送られるのcancellationToken
を待つ必要はないため、正常に戻ることができます。 - Service Fabric ランタイムでは、 からの RunAsync(CancellationToken)すべての例外のエスケープは処理されません。 ハンドルされない例外が から RunAsync(CancellationToken)エスケープされた場合、Service Fabric ランタイムは次のアクションを実行します。
- FabricException (またはその派生例外の 1 つ) が からRunAsync(CancellationToken)エスケープされた場合、Service Fabric ランタイムはこのサービス レプリカを再起動します。 ハンドルされない例外に関する詳細を含むService Fabric Explorerに正常性警告が表示されます。
- OperationCanceledExceptionと Service Fabric ランタイムからのRunAsync(CancellationToken)エスケープが に渡されたシグナル処理によって取り消しを
cancellationToken
要求した場合、Service Fabric ランタイムはこの例外をRunAsync(CancellationToken)処理し、 のRunAsync(CancellationToken)正常な完了と見なします。 - OperationCanceledExceptionからエスケープRunAsync(CancellationToken)し、Service Fabric ランタイムが に渡されたシグナルによってキャンセルを
cancellationToken
RunAsync(CancellationToken)要求していない場合、このサービス レプリカをホストしているプロセスが停止します。 これは、同じプロセスによってホストされている他のすべてのサービス レプリカに影響します。 ハンドルされない例外の詳細は、Windows イベント ビューアーで確認できます。 - 他の型の例外が から RunAsync(CancellationToken) エスケープされた場合は、このサービス レプリカをホストしているプロセスが停止します。 これは、同じプロセスによってホストされている他のすべてのサービス レプリカに影響します。 ハンドルされない例外の詳細は、Windows イベント ビューアーで確認できます。
これらのガイドラインに準拠しないと、サービスのフェールオーバー、再構成、またはアップグレードが停止し、サービスの可用性に影響を与える可能性があります。
適用対象
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
Azure SDK for .NET