ReliableSession.InactivityTimeout Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Kapatmadan önce hizmetin etkin kalmayabileceği bir zaman aralığını 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
Kapatmadan TimeSpan önce hizmetin etkin olmadığı zaman aralığını belirtir. 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ğin InactivityTimeout değerini 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 fazlası etkinlik olmadan geçerse, oturum altyapı ve kanal hataları tarafından durduruldu. Güvenilir oturum tek taraflı olarak yok edilir.
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ı ayarı, 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 tatmin edilmesi gereken iki farklı etkinlik dışı zamanlayıcı vardır. Bu etkinlik dışı süreölçerlerden 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. Uygulama veya altyapı gibi hiçbir ileti zaman aşımı süresi içinde alınmazsa bu etkinlik dışı süreölçer tetiklenir. Altyapı iletisi, uygulama verilerini içermek yerine canlı tutma veya bildirim gibi kanal yığınındaki protokollerden biri için oluşturulan bir iletidir.
İkinci etkinlik dışı zamanlayıcısı hizmettedir ve bağlama ayarını kullanır ReceiveTimeout . Zaman aşımı süresi içinde uygulama iletisi alınmazsa bu etkinlik dışı süreölçer tetiklenir.
Etkinlik dışı süreölçer tetiklenirse bağlantı bırakıldığından, daha ReceiveTimeout büyük olduğunda artan InactivityTimeout hiçbir etkisi yoktur. 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 yaratabilmek için her ikisini de her zaman artırmanız gerekir.