次の方法で共有


WorkflowInstance.Abort メソッド

定義

ワークフロー インスタンスを中止します。

public:
 void Abort();
public void Abort ();
member this.Abort : unit -> unit
Public Sub Abort ()

例外

ワークフロー ランタイム エンジンが実行されていません。

Workflow1 型のワークフロー インスタンスに対する Abort を呼び出す例を次に示します。

//Create a workflow runtime
WorkflowRuntime workflowRuntime = new WorkflowRuntime();
//Create a workflow instance
WorkflowInstance instance = workflowRuntime.CreateWorkflow(typeof(Workflow1));
//Start the instance
instance.Start();
//Abort the instance
instance.Abort();
'Create a workflow runtime
Dim workflowRuntime As New WorkflowRuntime()
'Create a workflow instance
Dim workflowInstance As WorkflowInstance = workflowRuntime.CreateWorkflow(GetType(Workflow1))
'Start the instance
workflowInstance.Start()
'Abort the instance
workflowInstance.Abort()

注釈

ワークフロー インスタンスは同期式で中止されます。つまり、メソッドはワークフロー インスタンスが中止された後に返されます。 ワークフロー ランタイム エンジンはメモリ内のワークフロー インスタンスを無効にし、WorkBatch をクリアします。 ワークフロー インスタンスが永続性サービスを使用していた場合、最後の永続性ポイント以降に実行された作業はすべて破棄されます。 ワークフロー インスタンスが中止されると、ワークフロー ランタイム エンジンは WorkflowAborted イベントを発生させます。 GetWorkflow を呼び出すことにより、ワークフロー インスタンスを再度読み込んで、その最後の永続性ポイントから開始することができます。

AbortTerminate と次の点で異なります。Abort はメモリ内のワークフロー インスタンスをクリアするだけで、最後の永続性ポイントからワークフロー インスタンスを再開できます。Terminate はメモリ内のワークフロー インスタンスをクリアし、インスタンスがメモリからクリアされたことを永続性サービスに通知します。 SqlWorkflowPersistenceService の場合、これは、終了時にそのワークフロー インスタンスのすべての状態情報がデータベースから削除されることを意味します。 既に保存されている永続性ポイントからワークフロー インスタンスを再度読み込むことはできません。

適用対象