2012-02-18 45 views
1

我正在使用wsDualHttpBinding進行雙工通信。如何檢測服務中的客戶端回調通道故障

每個登錄到服務器的客戶端,一個GUID和一個回調通道都被構造並保存在字典中。 (非常標準的方法)

我需要一種方法讓服務檢測客戶端何時意外關閉。我已經嘗試在服務器端掛鉤故障處理程序的函數,但它永遠不會被調用。

我猜測是因爲連接在服務器端一半打開,因爲它在wsDualtHttpBinding中使用不同的回調通道和客戶端通道。

有什麼建議嗎?

回答

2

我不認爲你會得到一個解決方案。如果您不需要WS *兼容性,則可以設想創建自定義綁定和通道,以定期在客戶端&服務器之間發送心跳包,類似於HTTP Long polling。如果錯過了一些心跳次數(如2),則假定另一端已斷開連接。否則,服務器無法知道客戶端意外斷開連接,直到超時。

+0

o'k thanks 我想我會在連接超時時刪除它們 – 2012-02-18 06:08:10

相關問題