2013-10-18 73 views
1

我已經實現了一個實現回調的WCF服務。 我有客戶端的Web應用程序連接到WCF通過HTTP API 和遠程客戶端應用程序,運行在Windows操作系統和連接到WCF使用net.TCP包括回調支持。WCF net.TCP流量澄清

現在客戶端發送動作給遠程和遠程執行它們並通過回調返回值返回狀態。

我有一個線程,即每2分鐘發送一次ImAlive(調用bool WCF.ImALIVE(machineID))以保持net.TCP活着,如果沒有任何活動。

我的問題: 如果我從客戶端回調的動作,雖然遠程執行它ImAlive線程喚醒,並呼籲WCF.ImALIVE,是會有塊或死鎖或超時的任何問題?

+0

保持專用線程可用於特定的調用者可能不是一個好主意。你能否以任何線程(線程安全數據訪問)加載或檢查的方式存儲服務器端客戶端會話狀態數據?如果你可以做到這一點,那麼你將不會保持線程束縛,這可以在客戶端閒置時爲其他客戶端請求提供服務。 – James

回答