2010-08-01 88 views
1

我用netTcpBinding使用ChannelFactory。有時我會遇到異常情況,之後我無法再使用此通道,因爲它處於故障狀態。c#ChannelFactory:如何在FaultException | TimeoutException之後重新連接/重新打開連接?

我應該怎麼做才能重新建立連接?我應該調用abort(),然後關閉/打開。 或close(),然後打開(),或者我應該只使用像一個新的對象:

myPublicChannel = this.ChannelFactory.CreateChannel(); 

我應該重新開始只是在我的catch塊的連接?我是否需要特殊的鎖定機制,因爲其他線程也可以使用此通道,然後嘗試同時重新建立連接。

非常感謝您的提前回答!

謝謝你的回答。這裏是一個鏈接,我發現可能爲他人是有益的同樣的問題/問題:

http://blogs.msdn.com/b/drnick/archive/2007/11/05/custom-transport-retry-logic.aspx

回答

1

我真的關閉,並將其設置爲空處置從連接東西,然後用開放的,我已經寫在沒有處理ChannelFactory之前的一些Web服務會導致一些內存泄漏和其他問題。

相關問題