【发布时间】:2010-08-03 00:51:04
【问题描述】:
我正在使用带有 netTcpBinding 的 ChannelFactory。有时我会遇到异常,在这些异常之后我无法再使用该通道,因为它处于故障状态。
我应该怎么做才能重新建立连接?我应该调用 abort(),然后关闭/打开。 或者关闭(),然后打开(),或者我应该只使用一个新对象,如:
myPublicChannel = this.ChannelFactory.CreateChannel();
我应该在我的 catch 块中重新打开连接吗?我是否需要一种特殊的锁定机制,因为其他线程也可以使用此通道,然后尝试同时重新建立连接。
非常感谢您提前回答!
感谢您的回答。这是我发现的一个链接,可能对遇到相同问题的其他人有所帮助:
http://blogs.msdn.com/b/drnick/archive/2007/11/05/custom-transport-retry-logic.aspx
【问题讨论】: