2011-01-06 35 views
2

我在WinForms應用程序中使用WorkflowFoundation 4.0。當用戶關閉表單時,程序不會退出,因爲工作流程正在後臺運行。Workflow Foundation - 終止vs中止vs取消

工作流創建這樣的:

WorkflowApplication workflow = new WorkflowApplication(new myActivity()); 
workflow.Run(); 

我想「關閉」它在我的FormClosing事件。我應該使用哪種方法? TerminateAbortCancel

+0

你說的 '親密' 意思。您想要如何處理工作流程。 – 2011-01-06 11:53:58

+0

我想中止它的線程,以便表單完全處理,並且不會有剩餘的線程正在運行... – veljkoz 2011-01-06 11:58:34

回答

6

根據您的需求/工作流程終止或取消。如果您正在使用實例存儲,並且從最後一次保存的狀態重新啓動工作流,Abort旨在保留持久狀態。

如果您不想要更多活動(包括像Finally塊這樣的清理)來執行,則使用終止。如果您希望自己擁有清理工作流的能力,請使用取消。我建議在大多數情況下取消。