Ten artykuł został przetłumaczony przez maszynę. Aby wyświetlić jego treść w języku angielskim, zaznacz pole wyboru Angielski. Możesz też wyświetlić angielski tekst w okienku wyskakującym, przesuwając wskaźnik myszy nad konkretny tekst”.
Tłumaczenie
Angielski

Właściwość Binding.ReceiveTimeout

.NET Framework (current version)
 

Data opublikowania: październik 2016

Pobiera lub ustawia interwał czasu, przez który połączenie może pozostawać nieaktywne, podczas którego nie aplikacji są odbierane wiadomości, zanim zostanie usunięte.

Przestrzeń nazw:   System.ServiceModel.Channels
Zestaw:  System.ServiceModel (w System.ServiceModel.dll)

public TimeSpan ReceiveTimeout { get; set; }

Wartość właściwości

Type: System.TimeSpan

TimeSpan Określający, jak długo aplikacja ma komunikat limit czasu. Wartość domyślna to 10 minut.

Exception Condition
ArgumentOutOfRangeException

Wartość jest mniejsza od zera lub zbyt duży.

Używając niezawodnej sesji, istnieją dwie czasomierzy różnych aktywności, które muszą być spełnione, aby zachować połączenie aktywności. Jeśli jeden z tych czasomierze aktywności zostanie wyłączone, połączenie zostało porzucone.

  • Pierwszy czasomierza aktywności na niezawodnej sesji i nosi nazwę InactivityTimeout. Ten czasomierz nieaktywności generowane odebranie żadnych komunikatów, aplikacji lub infrastruktury, przed upływem limitu czasu. Infrastruktura komunikat jest generowany jest jednym z protokołów w stosie kanału, takie jak utrzymywania aktywności lub potwierdzenie, zamiast zawierającego dane aplikacji na potrzeby.

  • Drugi czasomierza aktywności na usługę i używa ReceiveTimeout Ustawienie powiązania. Ten czasomierz nieaktywności generowane odebranie żadnych komunikatów aplikacji przed upływem limitu czasu. Określa, na przykład maksymalny czas, klient może potrwać do wysłania co najmniej jeden z serwerem zanim serwer zostanie zamknięty kanału używanego w sesji. Takie zachowanie gwarantuje, że klienci nie mogą pomieścić do zasobów serwera przez długi czas dowolnego.

Ponieważ połączenie zostało porzucone, jeśli wyzwala albo Czasomierz braku aktywności, zwiększając InactivityTimeout gdy jest większy niż ReceiveTimeout nie ma wpływu. Domyślne dla obu tych limitów czasu jest 10 minut, dzięki czemu zawsze trzeba zwiększyć obie z nich do podjęcia różnica przy użyciu niezawodnej sesji.

Po włączeniu przepływu transakcji na powiązania lub kanał operacja może trwać dłużej wykonać niż określony limit czasu. W tych okolicznościach kończy się niepowodzeniem z powodu wygasłe limitu czasu i transakcji przerywa odpowiednio.

Gdy zabezpieczeń jest używany z sesji, ReceiveTimeout wartość ustawiona w powiązaniu jest również używany jako limit czasu sesji.

Platforma uniwersalna systemu Windows
Dostępne od 8
.NET Framework
Dostępne od 3.0
Biblioteka klas przenośnych
Obsługiwane w: przenośne platformy .NET
Silverlight
Dostępne od 2.0
Windows Phone Silverlight
Dostępne od 7.0
Powrót do początku
Pokaż: