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 는 워크플로 런타임 엔진에서만 호출해야 합니다.