WorkflowRuntimeService.OnStopped メソッド

定義

派生クラスでオーバーライドされるときに、ワークフロー ランタイム エンジンが Stopped イベントを発生させると呼び出されるメソッドを表します。

protected:
 virtual void OnStopped();
protected virtual void OnStopped ();
abstract member OnStopped : unit -> unit
override this.OnStopped : unit -> unit
Protected Overridable Sub OnStopped ()

注釈

WorkflowRuntimeService クラスは、2 フェーズ停止機構を実装しています。この機構により、ワークフロー ランタイム エンジンのサービスは、必要であれば、その Stop メソッドがワークフロー ランタイム エンジンによって呼び出された後も、他のサービスのシャットダウンをサポートするための機能を保持できます。 ワークフロー ランタイム エンジンは、そのすべてのサービスの Stop メソッドを呼び出した後で WorkflowRuntime.Stopped イベントを発生させます。 OnStopped メソッドをオーバーライドして、WorkflowRuntime.Stopped イベントが発生したときにサービスが必要とする最終的なシャットダウン機能を持たせることができます。 WorkflowRuntime.Stopped イベントのサブスクリプションとサブスクリプションの解除は、内部で処理されます。

注意

ワークフロー ランタイム エンジンの実行中に WorkflowRuntimeService を呼び出して RemoveService をワークフロー ランタイム エンジンから削除すると、ワークフロー ランタイム エンジンはそのサービスに対して Stop を呼び出します。 ただし、このような場合は、そのサービスに対して OnStopped メソッドが呼び出されません。 したがってサービスは、通常であれば OnStopped で実行する最終的なシャットダウンを、Stop メソッド内から実行することが必要な場合があります。 IsStarted をテストすると、ワークフロー ランタイム エンジンが実行されているかどうかを確認できます。

State は、Stopped が呼び出される前に OnStopped に設定されます。 OnStopped の既定の実装では、アクションは実行されません。

適用対象