ReliableSessionBindingElement.MaxRetryCount Propiedad

Definición

Obtiene o establece el número máximo de veces que se intenta transferir un mensaje durante la sesión confiable.

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

Valor de propiedad

Número máximo de veces que se intenta reenviar un mensaje. El valor mínimo es 1; el máximo es Int32.MaxValue; y el valor predeterminado es 8.

Excepciones

El valor establecido es menor o igual que cero.

Comentarios

Se considera que un mensaje es transferido si el destinatario ha confirmado su entrega.

Si no se ha recibido reconocimiento tras un cierto tiempo de un mensaje que se ha transmitido, la infraestructura retransmite automáticamente el mensaje. La infraestructura intenta enviar el mensaje, como máximo, un número MaxRetryCount de veces. Si no se recibe una confirmación antes de que se alcance este límite, se considera que se ha producido un error de comunicación grave y se produce un evento de canal erróneo.

La infraestructura utiliza un algoritmo de espera exponencial para determinar cuándo retransmitir, en función del tiempo medio calculado de ida y vuelta. El tiempo de reintento inicial se calcula en función del tiempo de recorrido de ida y vuelta medido para establecer la sesión. El algoritmo de retransmisión duplica el retraso en cada intento, lo que provoca aproximadamente un intervalo de 8,5 minutos entre el primer intento de transmisión y el último intento de retransmisión. El tiempo del primer intento de retransmisión se ajusta al cálculo del tiempo de ida y vuelta y varía según el período de tiempo adicional que resulta del número de intentos que se necesitan. Esto permite que el tiempo de retransmisión se adapte dinámicamente a las condiciones variantes de la red.

Se aplica a