好吧,我想知道是否有人可以帮助解决我遇到的问题...。
我想关闭一个套接字,然后从同一端口重新运行。这就是我在做的...
开场时间:
UdpServer = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
UdpServerIpEndPoint = new IPEndPoint(IPAddress.Any, 9050);
UdpEndPoint = (EndPoint)UdpServerIpEndPoint;
UdpServer.Bind(UdpServerIpEndPoint);
结束:
UdpServer.Shutdown(SocketShutdown.Both);
UdpServer.Disconnect(true);
UdpServer.Close();
在我关闭它之后。并且我尝试使用与上面相同的代码重新连接它,但出现错误:
我在关闭过程中检查了异常,但没有得到任何结果,我猜它们已正确关闭,因此,实际上是什么导致了此问题?请帮忙!
最佳答案
我得到了答案。
我需要在套接字声明后使用它...
socket.SetSocketOption(SocketOptionLevel.Socket,SocketOptionName.ReuseAddress, true);
关于c# - 关闭一个套接字,然后从.net中的同一端口重新打开它,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7942810/