次の方法で共有


WorkflowInstance.TryUnload メソッド

定義

メモリ内のワークフロー インスタンスが中断状態またはアイドル状態のときに、そのワークフロー インスタンスを永続ストアにアンロードします。

public:
 bool TryUnload();
public bool TryUnload ();
member this.TryUnload : unit -> bool
Public Function TryUnload () As Boolean

戻り値

ワークフロー インスタンスがアンロードされた場合は true。それ以外の場合は false

例外

ワークフロー ランタイム エンジンに登録されている永続性サービスがありません。

次の例は、WorkflowIdled イベントが発生したときに TryUnload メソッドを使用してワークフローをアンロードする方法を示しています。 この例は、Program.cs ファイルに含まれている永続性サービスの使用の SDK サンプルです。 詳細については、「 永続化サービスの使用サンプル」を参照してください。

//Called when the workflow is idle - in this sample this occurs when the workflow is waiting on the
// delay1 activity to expire
static void OnWorkflowIdled(object sender, WorkflowEventArgs e)
{
    Console.WriteLine("Workflow is idle.");
    e.WorkflowInstance.TryUnload();
}
'Called when the workflow is idle - in me sample me occurs when the workflow is waiting on the
' delay1 activity to expire
Shared Sub OnWorkflowIdled(ByVal sender As Object, ByVal e As WorkflowEventArgs)
    Console.WriteLine("Workflow is idle.")
    e.WorkflowInstance.TryUnload()
End Sub

注釈

ワークフロー インスタンスがアイドル状態または中断状態の場合、TryUnload は永続性サービスを使用することによって、メモリからワークフロー インスタンスを削除し、削除したワークフロー インスタンスをデータ ストアに永続化します。 WorkflowRuntime に登録された永続性サービスがない場合、TryUnloadInvalidOperationException をスローします。 ワークフロー インスタンスが正常に永続化された場合、ランタイムは イベントを WorkflowUnloaded 発生させ、 を返します trueUnload は、 false ワークフロー インスタンスが既にアンロードされているか、終了されたか、中止されたか、既に完了している場合に を返します。

ホストは TryUnload を使用して、アイドル状態のワークフローのシステム リソースを再利用できます。

適用対象