我有一个简单的WCF双工TCP服务,我试图以编程方式停止.如果我没有任何连接用户,ServiceHost.Close()非常快,但如果我有一个连接用户,我发现Close()函数需要花费相当多的时间,有时> 30秒.这是通常的行为吗?
另一方面,Abort()几乎是瞬间的,我很想用它代替.
确保关闭客户端连接,如下所示:
var channel = factory.CreateChannel();
var channel.DoSomethingForMe();
(channel as ICommunicationObject).Close();
Run Code Online (Sandbox Code Playgroud)
如果您不在通道上执行此Close(),则服务器上的Close()会等待非常长的时间,即使您指定了短暂的超时.
| 归档时间: |
|
| 查看次数: |
9130 次 |
| 最近记录: |