Binding.ReceiveTimeout Propriété

Définition

Obtient ou définit la durée d’inactivité d’une connexion. Si aucun message d’application n’est reçu pendant ce laps de temps, la connexion est abandonnée.

public:
 property TimeSpan ReceiveTimeout { TimeSpan get(); void set(TimeSpan value); };
public TimeSpan ReceiveTimeout { get; set; }
member this.ReceiveTimeout : TimeSpan with get, set
Public Property ReceiveTimeout As TimeSpan

Valeur de propriété

TimeSpan

Qui TimeSpan spécifie la durée pendant laquelle l’application doit recevoir un message avant l’expiration du délai d’attente. La valeur par défaut est de 10 minutes.

Exceptions

La valeur est soit inférieure à zéro soit trop élevée.

Remarques

Dans le cas d'une session fiable, deux minuteries d'inactivité sont à satisfaire pour laisser la connexion active. Si l’une ou l’autre de ces minuteries d’inactivité arrive à son terme, la connexion est abandonnée.

  • La première, InactivityTimeout, s'applique à la session fiable. Elle se déclenche si aucun message, d'application ou d'infrastructure, n'est reçu dans le temps d'attente imparti. Un message d'infrastructure est un message généré pour les besoins de l'un des protocoles dans la pile du canal, tel qu'un message de maintien de l'activité ou un accusé de réception, par opposition aux messages incluant des données d'application.

  • La deuxième minuterie d’inactivité s’applique au service et utilise le paramètre ReceiveTimeout de la liaison. Cette minuterie se déclenche si aucun message d'application n'est reçu dans le délai d'attente. Elle indique par exemple la durée limite d'un client pour envoyer au moins un message au serveur avant que ce dernier ferme le canal utilisé par une session. Cela permet de s'assurer que les clients ne peuvent pas accaparer des ressources serveur pendant des périodes longues et injustifiées.

Après la perte de la connexion suite au déclenchement de l’une des minuteries d’inactivité, augmenter InactivityTimeout une fois qu’il a dépassé le délai ReceiveTimeout n’a aucun effet. La valeur par défaut de ces deux délais est de 10 minutes. Vous devez par conséquent toujours modifier ces deux paramètres pour constater les effets du changement en cas d'utilisation d'une session fiable.

Si le flux de transaction est activé sur la liaison ou le canal, la durée d'exécution de l'opération peut être plus longue que le délai d'attente spécifié. De ce cas, l'opération échoue en raison du délai d'attente périmé et la transaction abandonne convenablement.

Lorsque la sécurité est utilisée avec les sessions, la ReceiveTimeout valeur définie sur la liaison est également utilisée comme délai d’expiration de session.

S’applique à