WorkflowRuntimeService.Stop 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
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의 기본 구현은 서비스가 시작되었는지 여부를 추적하며, 서비스가 시작되기 전에 중지된 경우 이 정보를 사용하여 해당 예외를 throw합니다.
이 메서드를 재정의하여 워크플로 런타임 엔진에서 서비스를 중지하도록 하는 데 필요한 추가 기능을 제공할 수 있습니다. 서비스에서 Stop이 호출될 때 어떠한 서비스가(있는 경우) 중지 또는 실행될지는 알 수 없습니다. 워크플로 런타임 엔진은 모든 워크플로 런타임 엔진 서비스의 WorkflowRuntime.Stopped 메서드를 호출한 후 Stop 이벤트를 발생시킵니다. 모든 워크플로 런타임 엔진 서비스에 워크플로 런타임 엔진이 호출한 중지 메서드가 있을 때까지 서비스가 다른 서비스를 지원하기 위한 추가 기능을 유지해야 할 수도 있습니다. 서비스가 이러한 기능을 유지해야 하는 경우 OnStopped 메서드를 재정의하여 WorkflowRuntime.Stopped 이벤트가 발생할 때 서비스 중지를 완료하는 데 필요한 추가 작업을 수행할 수 있습니다.
참고
워크플로 런타임 엔진이 실행되는 동안 WorkflowRuntimeService를 호출하여 RemoveService를 워크플로 런타임 엔진에서 제거하면 워크플로 런타임 엔진이 서비스에서 Stop을 호출합니다. 그러나 이 경우 서비스에 대해 OnStopped 메서드가 호출되지 않습니다. 따라서 주로 OnStopped에서 수행되는 추가 종료 기능을 Stop 메서드 내부에서 수행해야 할 수도 있습니다. IsStarted를 테스트하여 워크플로 런타임 엔진이 실행 중인지 여부를 확인할 수 있습니다.
Stop는 워크플로 런타임 엔진에서만 호출되어야 합니다.
적용 대상
.NET