Aracılığıyla paylaş


ReliableSession.InactivityTimeout Özellik

Tanım

Kapatmadan önce hizmetin devre dışı kalabileceği bir zaman aralığı alır veya ayarlar.

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

Özellik Değeri

TimeSpan

Bir TimeSpan hizmetin kapatmadan önce etkin olmadığı süreyi belirten zaman aralığı. Varsayılan değer 10 dakikadır.

Özel durumlar

Değer kümesi sıfırdan küçük veya sıfıra eşit.

Örnekler

// 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)

Açıklamalar

özelliği, özelliğinin değerini InactivityTimeout alır ve ayarlar.

Kanaldaki etkinlik, uygulama veya altyapı iletisi alma olarak tanımlanır. Etkinlik dışı zaman aşımı özelliği, etkin olmayan oturumu canlı tutmak için gereken en uzun süreyi denetler. Belirtilen zaman aralığından InactivityTimeout daha fazla etkinlik olmadan geçerse, oturum altyapı ve kanal hataları tarafından durduruldu. Güvenilir oturum tek taraflı olarak kapatılır.

Gönderen uygulamanın gönderilecek iletisi yoksa, işlem yapılmadığı için güvenilir oturum normalde hataya neden olmaz; Bunun yerine etkin tutma mekanizması oturumu süresiz olarak etkin tutar. Hiçbir uygulama iletisi gönderilmez veya alınmazsa dağıtıcının güvenilir oturumu bağımsız olarak durdurabileceğini unutmayın. Bu nedenle, ağ koşulları herhangi bir türde ileti alınmazsa veya gönderende bir hata varsa, etkinlik dışı zaman aşımı genellikle sona erer.

Bu zaman aşımının ayarlanması, istemci kapatmazsa sunucunun bir güvenlik oturumuna tutunmasını engeller. Güvenlik oturumu etkinlik dışı kalma aralığı için bir ileti almadıysa, sunucu tarafından kapatılır. Bu, olası bir hizmet reddi saldırısını azaltır.

Güvenilir bir oturum kullanırken, bağlantıyı canlı tutmak için karşılanması gereken iki farklı etkinlik dışı zamanlayıcı vardır. Bu etkinlik dışı zamanlayıcılardan biri kapanırsa bağlantı bırakılır.

  • İlk etkinlik dışı zamanlayıcı güvenilir oturumdadır ve olarak adlandırılır InactivityTimeout. Zaman aşımı süresi içinde uygulama veya altyapı gibi hiçbir ileti alınmazsa bu işlem yapılmaz zamanlayıcı tetiklenir. Altyapı iletisi, uygulama verilerini içermek yerine canlı tutma veya bildirim gibi kanal yığınındaki protokollerden birinin amacı için oluşturulan bir iletidir.

  • İkinci etkinlik dışı zamanlayıcı hizmettedir ve bağlama ayarını kullanır ReceiveTimeout . Zaman aşımı süresi içinde uygulama iletisi alınmazsa bu işlem yapılmaz zamanlayıcı tetiklenir.

Etkinlik dışı süreölçer tetiklendiğinde bağlantı bırakıldığından, değerinden büyük ReceiveTimeout olduğunda artan InactivityTimeout hiçbir etkisi olmaz. Bu zaman aşımlarının her ikisi için de varsayılan değer 10 dakikadır, bu nedenle güvenilir bir oturum kullanırken fark oluşturmak için her zaman her ikisini de artırmanız gerekir.

Şunlara uygulanır