1
我正在监听端口上的传入连接的控制台服务器应用程序。每次我重新启动控制台应用程序时,它都有一个挂起的连接队列,导致控制台服务器应用程序崩溃。从监听器中删除所有挂起的连接队列
有没有办法在接受新连接之前删除队列中的所有未决连接?
我正在监听端口上的传入连接的控制台服务器应用程序。每次我重新启动控制台应用程序时,它都有一个挂起的连接队列,导致控制台服务器应用程序崩溃。从监听器中删除所有挂起的连接队列
有没有办法在接受新连接之前删除队列中的所有未决连接?
您的服务器应用程序需要设置SO_REUSEADDR
插座option:
server_socket.SetSocketOption(SocketOptionLevel.Socket,
SocketOptionName.ReuseAddress, true);
能够重新启动后的监听端口绑定。
这个答案可能有帮助。 http://stackoverflow.com/questions/12231789/cancel-blocking-accepttcpclient-call/12489289#12489289 – th1rdey3
导致它崩溃如何?挂起的连接队列无法在侦听套接字关闭后继续存在。发布你的问题,而不是你的诊断。 – EJP