語言

WorkflowRuntimeService.Stop 方法

定義

當在導出類別中被覆寫時,會停止服務並將 變更 State 為 Stopping。

protected public:
 virtual void Stop();
protected internal virtual void Stop();
abstract member Stop : unit -> unit
override this.Stop : unit -> unit
Protected Friend Overridable Sub Stop ()

例外狀況

是一個空參考()。

-或-

服務尚未開始。

備註

Stop當WorkflowRuntimeService呼叫時,工作流執行引擎會對其所有源自該StopRuntime類別的服務呼叫。 Stop 當工作流執行引擎透過呼叫 RemoveService移除一個服務時,也會被 呼叫。 預設實作 Stop 會追蹤服務是否已啟動,並利用此資訊在服務在啟動前停止時拋出適當的例外。

你可以透過覆寫此方法,提供讓工作流程執行引擎停止服務所需的額外功能。 當您的服務被呼叫時,無法保證哪些服務會被停止或執行 Stop 。 工作流程執行引擎在呼叫WorkflowRuntime.Stopped所有工作流執行引擎服務的方法後,才會提出Stop該事件。 你的服務可能需要保留部分殘餘功能以支援其他服務,直到所有工作流程執行引擎的服務都被其停止方法調用完畢。 若服務必須保留此功能,您可以覆寫 OnStopped 該方法,執行完成停止服務 WorkflowRuntime.Stopped 所需的額外動作。

Note

如果在工作流執行引擎運行時,透過呼叫移除WorkflowRuntimeService了你的RemoveService服務,工作流程執行引擎會呼叫Stop你的服務。 然而,在這種情況下, OnStopped 該方法不會被召喚到您的服務中。 因此,你的服務可能需要執行任何原本會在系統內OnStopped執行Stop的額外關機功能。 你可以測試 IsStarted 工作流程執行引擎是否正在運行。

Stop 應該只由工作流程執行引擎呼叫。

適用於