我正在尝试使用TCP编写客户端/服务器类型的应用程序。客户端安装了客户端程序,它始终监听端口(例如11000)。我的服务器向其中一个客户端发送了一小段快速文本(我可能正在进行for循环,可能是数百个客户端)。现在所有这一切都正常工作,除了这里的事情,如果我发送命令太快,应用程序崩溃,说'不能在此方法中使用处理对象Socket'(我使用此代码:http://msdn.microsoft.com/en-us/library/bew39x2a.aspx):
private static void ConnectCallback(IAsyncResult ar)
{
// Retrieve the socket from the state object.
Socket client = (Socket)ar.AsyncState;
// Complete the connection.
client.EndConnect(ar);
// Signal that the connection has been made.
connectDone.Set();
}
有人可以提供帮助。那时候港口没有开通吗?我在每个命令结束时都这样称呼:
client.Shutdown(SocketShutdown.Both);
client.Disconnect(false);
client.Close();