Sdílet prostřednictvím


Binding.ReceiveTimeout Vlastnost

Definice

Získá nebo nastaví interval doby, po kterou může připojení zůstat neaktivní, během kterého nejsou přijaty žádné zprávy aplikace, než se zahodí.

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

Hodnota vlastnosti

Určuje TimeSpan , jak dlouho má aplikace dostat zprávu před uplynutím časového limitu. Výchozí hodnota je 10 minut.

Výjimky

Hodnota je menší než nula nebo příliš velká.

Poznámky

Při použití spolehlivé relace existují dva různé časovače nečinnosti, které musí být splněny, aby bylo připojení 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 během časového limitu nejsou přijaty žádné zprávy, ať už aplikace nebo infrastruktura. Zpráva o infrastruktuře je zpráva, která se generuje pro účely jednoho z protokolů v zásobníku kanálů, jako je zachování nebo potvrzení, a nikoli pro 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. To určuje například maximální dobu, kterou může klient trvat, než server odešle alespoň jednu zprávu na server, než server zavře kanál používaný relací. Toto chování zajišťuje, že klienti nemohou držet serverové prostředky po libovolnou dlouhou dobu.

Vzhledem k tomu, že se připojení ukončí, pokud se aktivuje některý z č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ýšit obě tyto hodnoty.

Pokud je u vazby nebo kanálu povolený tok transakcí, může trvat déle, než je zadaný časový limit. V těchto případech operace selže kvůli vypršení časového limitu vypršení platnosti a transakce se odpovídajícím způsobem přeruší.

Při použití zabezpečení s relacemi ReceiveTimeout se hodnota nastavená na vazbu používá také jako časový limit relace.

Platí pro