Partager via


WorkflowRuntimeService.Stop Méthode

Définition

En cas de substitution dans une classe dérivée, arrête le service et fait passer la propriété 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 ()

Exceptions

Runtime est une référence Null (Nothing en Visual Basic).

- ou -

Le service n'a pas encore été démarré.

Remarques

Stop est appelée par le moteur d'exécution de workflow sur tous ses services qui dérivent de la classe WorkflowRuntimeService lorsque la méthode StopRuntime est appelée. La méthode Stop est également appelée par le moteur d'exécution de workflow lorsqu'un service en est supprimé par un appel à la méthode RemoveService. L'implémentation par défaut de Stop effectue le suivi du démarrage du service et utilise cette information pour lever l'exception appropriée si le service est arrêté avant qu'il ne soit démarré.

Vous pouvez fournir les fonctionnalités supplémentaires nécessaires pour que l'arrêt de votre service soit déclenché par le moteur d'exécution de workflow en substituant cette méthode. Il n'y a aucune garantie sur les services qui, le cas échéant, sont arrêtés ou exécutés lorsque Stop est appelée sur votre service. Le moteur d'exécution de workflow déclenche l'événement WorkflowRuntime.Stopped après l'appel de la méthode Stop de tous ses services du moteur d'exécution de workflow. Votre service peut devoir conserver des fonctionnalités résiduelles pour prendre en charge d'autres services jusqu'à ce que tous les services du moteur d'exécution de workflow aient leurs méthodes d'arrêt appelées par ce dernier. Si votre service doit conserver de telles fonctionnalités, vous pouvez substituer la méthode OnStopped pour exécuter toute action supplémentaire requise pour terminer l'arrêt de votre service lorsque l'événement WorkflowRuntime.Stopped est déclenché.

Notes

Si votre WorkflowRuntimeService est supprimé du moteur d'exécution de workflow par un appel à RemoveService pendant que le moteur d'exécution de workflow s'exécute, ce dernier appelle Stop sur votre service. Toutefois, la méthode OnStopped ne sera pas appelée pour votre service dans cette situation. Votre service devra peut-être, par conséquent, exécuter toutes les fonctionnalités d'arrêt supplémentaires qu'il exécuterait normalement dans OnStopped à partir de la méthode Stop. Vous pouvez tester la propriété IsStarted pour déterminer si le moteur d'exécution de workflow s'exécute.

Stop doit être appelée uniquement par le moteur d'exécution de workflow.

S’applique à