如何在.NET Remoting中释放服务器端的端口占用情况?

如何在.NET Remoting中释放服务器端的端口占用情况?

问题描述:

在我的应用程序中,客户端可以从服务器端请求服务,而服务器可以将事件发送到客户端。如何在.NET Remoting中释放服务器端的端口占用情况?

在.NET远程处理中,事件机制由双向通道实现,而在这种情况下,实际客户端扮演另一个“事件服务器”角色。通常客户会为这种通信开放一个自由端口。

当我在服务器端运行netstat CMD时,我可以看到这个服务器通过不同的端口建立了许多到其他客户端的连接。

我的问题是,当某些客户端被关闭时,这些客户端的上述端口的连接将不再可见。但实际上不...

有人知道如何释放连接从服务器到客户端?

你必须处理你的连接对象。你做了吗 ?

[编辑]我的猜测是,这样的对象确实打开了底层连接。这些对象应实现IDisposable接口,并且.Dispose()必须调用并释放由对象持有的资源(您的案例中的连接/端口)。希望有帮助: -/

+0

我有两种对象:SAO和CAO。你的意思是服务器需要明确处理CAO吗?是否足够我只通过RemotingService.Disconnect(obj)断开这些CAO? 你能多解释一下吗 谢谢 – 2010-03-11 01:11:16