Eksportuj (0) Drukuj
Rozwiń wszystko
Ten artykuł był przetłumaczony komputerowo. Oryginalny tekst zobaczysz, umieszczając wskaźnik myszy nad zdaniami w artykule. Więcej informacji.
Tłumaczenie
Oryginał

Właściwość Binding.ReceiveTimeout —

.NET Framework 4.5

Pobiera lub ustawia interwał czasu, przez który połączenie może pozostawać nieaktywne, podczas którego aplikacji są odebrane żadne wiadomości, zanim zostanie odrzucone.

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

public TimeSpan ReceiveTimeout { get; set; }

Wartość właściwości

Typ: System.TimeSpan
Timespan , Określa, jak długo aplikacja ma być wyświetlany komunikat, zanim przekroczy limit czasu. Wartością domyślną jest 10 minut.

Implementuje

IDefaultCommunicationTimeouts.ReceiveTimeout

WyjątekWarunek
ArgumentOutOfRangeException

Wartość jest mniejsza niż zero lub zbyt duży.

Przy użyciu niezawodnej sesji, istnieją dwa typy czasomierzy nieaktywności różnych, które muszą być spełnione, aby połączenie było alive. Jeśli albo te liczniki czasu nieaktywności zgaśnie, połączenie zostaje odrzucone.

  • Pierwszy Czasomierz braku aktywności jest na niezawodnej sesji i nosi nazwę InactivityTimeout. Ten czasomierz nieaktywności pożary, jeśli są odebrane żadne wiadomości, aplikacji lub infrastruktury, przed upływem limitu czasu. Komunikat infrastruktury jest generowany dla celów z jednego z protokołów w stosie kanału, takie jak keep alive lub potwierdzenia, zamiast zawierające dane aplikacji.

  • Drugi Czasomierz braku aktywności jest na usługi i korzysta z ReceiveTimeout ustawienie wiązania. Ten czasomierz nieaktywności pożary, jeżeli przed upływem limitu czasu są odebrane żadne wiadomości aplikacji. Określa to, na przykład maksymalny czas, przez które klient może potrwać do wysłania do serwera co najmniej jednej wiadomości, zanim serwer zostanie zamknięty kanał sesji. To zachowanie gwarantuje, że klienci nie posiadają zasoby serwera przez długie okresy czasu dowolnego.

Ponieważ połączenie jest porzucane, jeśli czasomierz braku aktywności, albo pożary, zwiększając InactivityTimeout po jest większa niż ReceiveTimeout nie ma wpływu. Domyślne dla obu tych limitów czasu jest 10 minut, dzięki czemu zawsze trzeba zwiększyć obu z nich, aby różnica przy użyciu niezawodnej sesji.

Jeśli przepływu transakcji jest włączony na powiązanie lub kanału, operacja może trwać dłużej wykonanie niż określony limit czasu. W tych okolicznościach, który kończy się niepowodzeniem ze względu na minął limit czasu i transakcji przerywa odpowiednio.

Gdy używane są zabezpieczenia z sesjami, ReceiveTimeout wartość określona w wiązaniu jest również używany jako limit czasu sesji.

.NET Framework

Obsługiwane w: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Obsługiwane w: 4, 3.5 z dodatkiem SP1

Portable Class Library

Obsługiwane w: Portable Class Library

.NET dla aplikacji do sklepu Windows Store

Obsługiwane w: Windows 8

.NET dla aplikacji dla Windows Phone

Obsługiwane w: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 z dodatkiem R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista z dodatkiem SP2, Windows Server 2008 (instalacja roli Server Core jest nieobsługiwana), Windows Server 2008 R2 (instalacja roli Server Core jest obsługiwana, gdy jest zainstalowany dodatek SP1 lub nowszy; procesory Itanium nie są obsługiwane)

Program .NET Framework nie obsługuje wszystkich wersji każdej platformy. Aby uzyskać listę wszystkich obsługiwanych wersji, zobacz Wymagania systemowe programu .NET Framework.

Zawartość społeczności

Dodaj
Pokaż:
© 2014 Microsoft