【发布时间】:2013-10-07 11:05:30
【问题描述】:
我在 C#.Net 中有客户端-服务器应用程序,为此我正在使用 Tcp 套接字。我已经使用以下函数来积极关闭套接字对象。
void CloseSocket(Socket socket)
{
if(socket != null)
{
socket.ShutDown(ocketShutdown.Both);
socket.Close();
}
}
在正常情况下,此函数完美运行,我的方法返回读取函数返回的 0 个字节。
但是每当客户端进程被taskmanager服务器程序终止时,就会阻塞到网络流的读取功能中。
如何解决这个读取阻塞功能?我不想使用 AsyncRead 函数,因为整个项目使用阻塞策略,所以现在写我不能将它更改为异步模式。
谢谢,提前。
【问题讨论】:
-
您能否澄清一下:您发布的代码 是否阻塞了问题?还是说读取代码(未显示)没有检测到僵尸连接?
-
你能发布你用来接收的代码吗?我希望在这种情况下阻塞操作会被中断。
标签: c# .net sockets network-programming