2010-08-01 71 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服务会导致一些内存泄漏和其他问题。

相关问题