Sdílet prostřednictvím


ReliableSession.InactivityTimeout Vlastnost

Definice

Získá nebo nastaví interval doby, po kterou může služba zůstat neaktivní před zavřením.

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

Hodnota vlastnosti

TimeSpan

Určuje TimeSpan interval doby, po kterou služba zůstává neaktivní před uzavřením. Výchozí hodnota je 10 minut.

Výjimky

Sada hodnot je menší nebo rovna nule.

Příklady

// Create a new reliable session object
ReliableSessionBindingElement bindingElement = new ReliableSessionBindingElement();
ReliableSession reliableSession = new ReliableSession(bindingElement);

// Now you can access property values
Console.WriteLine("Ordered: {0}", reliableSession.Ordered);
Console.WriteLine("InactivityTimeout: {0}", reliableSession.InactivityTimeout);
' Create a new reliable session object
Dim bindingElement As ReliableSessionBindingElement = New ReliableSessionBindingElement()
Dim reliableSession As ReliableSession = New ReliableSession(bindingElement)

' Now you can access property values
Console.WriteLine("Ordered: {0}", reliableSession.Ordered)
Console.WriteLine("InactivityTimeout: {0}", reliableSession.InactivityTimeout)

Poznámky

Vlastnost získá a nastaví hodnotu InactivityTimeout vlastnosti.

Aktivita v kanálu je definována jako příjem zpráv aplikace nebo infrastruktury. Vlastnost časového limitu nečinnosti řídí maximální dobu, aby byla neaktivní relace aktivní. Pokud více než InactivityTimeout zadaný časový interval projde bez aktivity, relace se přeruší infrastrukturou a chybami kanálu. Spolehlivá relace je jednostranně roztrhaná.

Pokud odesílaná aplikace nemá žádné zprávy k odeslání, není spolehlivá relace obvykle chybná kvůli nečinnosti; místo toho mechanismus udržování udržuje relaci aktivní po neomezenou dobu. Všimněte si, že dispečer by mohl nezávisle přerušit spolehlivou relaci, pokud se neposílají ani nepřijdou žádné zprávy aplikace. Časový limit nečinnosti tedy obvykle vyprší, pokud jsou síťové podmínky tak, aby nebyly přijaty žádné zprávy jakéhokoli druhu nebo došlo k selhání odesílatele.

Nastavení tohoto časového limitu zabrání serveru v držení relace zabezpečení, pokud ho klient nezavře. Pokud relace zabezpečení nepřijala zprávu pro časový interval nečinnosti, server ji zavře. Tím se zmírní potenciální útok do služby.

Při použití spolehlivé relace existují dva různé časovače nečinnosti, které musí být spokojeny, aby připojení zůstalo aktivní. Pokud některý z těchto časovačů nečinnosti vypne, připojení se ukončí.

  • První časovač nečinnosti je ve spolehlivé relaci a nazývá se InactivityTimeout. Tento časovač nečinnosti se aktivuje, pokud se během časového limitu nepřijdou žádné zprávy, ať už aplikace nebo infrastruktura. Zpráva o infrastruktuře je zpráva, která se vygeneruje pro účely jednoho z protokolů v zásobníku kanálů, jako je zachování nebo potvrzení, místo toho, aby obsahovala data aplikace.

  • Druhý časovač nečinnosti je ve službě a používá ReceiveTimeout nastavení vazby. Tento časovač nečinnosti se aktivuje, pokud během časového limitu nejsou přijaty žádné zprávy aplikace.

Vzhledem k tomu, že připojení se ukončí, pokud se aktivuje časovač nečinnosti, zvýší InactivityTimeout se, jakmile je větší, než ReceiveTimeout nemá žádný vliv. Výchozí hodnota obou těchto časových limitů je 10 minut, takže při použití spolehlivé relace musíte vždy zvětšit obě.

Platí pro