CommunicationState CommunicationState CommunicationState CommunicationState Enum

Définition

Définit les états dans lesquels un ICommunicationObject peut exister.Defines the states in which an ICommunicationObject can exist.

public enum class CommunicationState
public enum CommunicationState
type CommunicationState = 
Public Enum CommunicationState
Héritage
CommunicationStateCommunicationStateCommunicationStateCommunicationState

Champs

Closed Closed Closed Closed 4

Indique que l'objet de communication a été fermé et n'est plus utilisable.Indicates that the communication object has been closed and is no longer usable.

Closing Closing Closing Closing 3

Indique que l'objet de communication est en train de passer à l'état Closed.Indicates that the communication object is transitioning to the Closed state.

Created Created Created Created 0

Indique que l'objet de communication a été instancié et est configurable, mais pas encore ouvert ou prêt pour utilisation.Indicates that the communication object has been instantiated and is configurable, but not yet open or ready for use.

Faulted Faulted Faulted Faulted 5

Indique que l'objet de communication a rencontré une erreur ou un défaut dont il ne peut pas récupérer et qu'il n'est donc plus utilisable.Indicates that the communication object has encountered an error or fault from which it cannot recover and from which it is no longer usable.

Opened Opened Opened Opened 2

Indique que l'objet de communication est maintenant ouvert et prêt à être utilisé.Indicates that the communication object is now open and ready to be used.

Opening Opening Opening Opening 1

Indique que l'objet de communication est en train de passer de l'état Created à l'état Opened.Indicates that the communication object is being transitioned from the Created state to the Opened state.

Remarques

Cette énumération définit les états qui sont valides pour tous les objets de communication dans le système, y compris les canaux, les écouteurs, les fabriques, les répartiteurs et les hôtes de service.This enumeration defines the states that are valid for all communication objects in the system, including channels, listeners, factories, dispatchers, and service hosts.

Les méthodes qui gèrent les transitions entre ces états et les événements qui peuvent leur être associés sont définies dans l'interface ICommunicationObject.The methods that manage transitions between these states and the events that can be associated with them are defined in the ICommunicationObject interface. L'état d'un objet peut être obtenu à l'aide de la propriété State.The state of an object can be obtained using the State property.

Un objet de communication peut occuper quatre états principaux et deux états transitoires.There are four main states and two transient states that a communication object can occupy. Les états principaux sont :The main states are:

  • CréationCreated

  • OpenedOpened

  • ClosedClosed

  • FaultedFaulted

Les deux états transitoires qu'un objet de communication peut occuper lors de la transition entre ces états principaux sont :The two transitory states that a communication object can occupy when transitioning between these main states are:

  • OpeningOpening

  • ClosingClosing

L’objet de communication peut être configuré dans l’état créé.The communication object can be configured in the Created state. Par exemple, ses propriétés peuvent être modifiées, et ses événements peuvent être enregistrés.For example, its properties can be changed, and its events can be registered. Aucune entrée ou sortie ne peut se produire dans cet état.No input or output can occur in this state. Ainsi, par exemple, des messages ne peuvent pas être envoyés ou reçus d'un canal dans cet état.So messages, for example, cannot be sent or received from a channel in this state.

L’ouverture est un état temporaire que l’objet de communication entre lorsque Open la méthode est appelée.The Opening is a temporary state that the communication object enters when the Open method is invoked. Sauf indication contraire sur les classes dérivées, les objets dans l'état d'ouverture ne peuvent pas être configurés.Unless otherwise noted on derived classes, objects in the opening state cannot be configured. Cet état de transition ne peut être entré qu’à partir de l’état créé.This transition state can only be entered from the Created state.

Les objets passent à l’état ouvert lorsque le processus d’ouverture est terminé.Objects transition to the Opened state when the open process completes. Cette transition à l’état ouvert est uniquement valide à partir de l’état d’ouverture.This transition to the Opened state is only valid from the Opening state. Sauf indication contraire sur les classes dérivées, la configuration de l'objet est maintenant désactivée.Unless otherwise noted on derived classes, the configuration of the object is now disabled. À ce stade, l'objet est totalement utilisable pour les transferts de messages.At this point, the object is fully usable for message transfers.

La fermeture est un état temporaire dans lequel l’objet entre quand Close la méthode est appelée pour un arrêt approprié ou si l’objet est abandonné.The Closing is a temporary state that the object enters when the Close method is invoked for a graceful shutdown or the object is aborted. À ce stade, l'objet devient inutilisable (si ce n'est pas déjà le cas).At this point, the object becomes (if not already) unusable. Cette transition est valide à partir de n’importe quel État, à l’exception de l’état fermé.This transition is valid from any state except the Closed state.

L’état fermé équivaut à être supprimé et la configuration de l’objet peut encore être inspectée.The Closed state is equivalent to being disposed and the configuration of the object can still be inspected.

L’état Faulted est utilisé pour indiquer que l’objet est passé à un État dans lequel il ne peut plus être utilisé.The Faulted state is used to indicate that the object has transitioned to a state where it can no longer be used. Il y a deux scénarios principaux dans lesquels cela peut se produire :There are two primary scenarios where this can happen:

  • Si la méthode Open échoue pour quelque raison, l'objet passe à l'état par défaut.If the Open method fails for any reason, the object transitions to the faulted state.

  • Si un canal basé sur session détecte une erreur dont il ne peut pas récupérer, il passe à l'état par défaut.If a session-based channel detects an error that it cannot recover from, it transitions to the faulted state. Ceci peut arriver, par exemple, s'il existe une erreur de protocole (autrement dit, il reçoit un message de protocole à un moment non valide) ou si le point de terminaison distant abandonne la session.This can happen for instance if there is a protocol error (that is, it receives a protocol message at an invalid time) or if the remote endpoint aborts the session.

Un objet dans l’état Faulted n’est pas fermé et peut contenir des ressources.An object in the Faulted state is not closed and may be holding resources. La méthode Abort doit être utilisée pour fermer un objet qui a généré une erreur.The Abort method should be used to close an object that has faulted. Si Close est appelé sur un objet dans l’état Faulted, une CommunicationObjectFaultedException exception est levée, car l’objet ne peut pas être fermé normalement.If Close is called on an object in the Faulted state, a CommunicationObjectFaultedException is thrown because the object cannot be gracefully closed.

S’applique à