Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 套接字异常:主机中的软件中止了已建立的连接_C#_.net_Multithreading_Sockets_Exception - Fatal编程技术网

C# 套接字异常:主机中的软件中止了已建立的连接

C# 套接字异常:主机中的软件中止了已建立的连接,c#,.net,multithreading,sockets,exception,C#,.net,Multithreading,Sockets,Exception,我制作了一个多线程游戏仿真服务器(它使用异步套接字)。我已经实现了一个调试器,它允许我跟踪抛出的异常。一段时间后,会弹出“已建立的连接被主机中的软件中止”异常,并且在这段时间内这种情况会越来越多,使游戏冻结。根据调试器,异常被抛出EndSend方法的catch块中。该程序正在Windows上运行。但是,当它在linux上运行时,会触发另一个异常:“套接字已关闭” 你认为问题是什么?经过几天的互联网研究,我什么也没发现。似乎是网络无法处理太多的连接。这并不奇怪。客户端没有很好地说“再见”就断开了连

我制作了一个多线程游戏仿真服务器(它使用异步套接字)。我已经实现了一个调试器,它允许我跟踪抛出的异常。一段时间后,会弹出“已建立的连接被主机中的软件中止”异常,并且在这段时间内这种情况会越来越多,使游戏冻结。根据调试器,异常被抛出EndSend方法的catch块中。该程序正在Windows上运行。但是,当它在linux上运行时,会触发另一个异常:“套接字已关闭”


你认为问题是什么?经过几天的互联网研究,我什么也没发现。

似乎是网络无法处理太多的连接。

这并不奇怪。客户端没有很好地说“再见”就断开了连接。当然,当你没有一个协议允许它说“再见”,然后你可以关闭你自己的套接字来响应,那么这种情况就会发生很多。@HansPassant,这就是为什么我不使用套接字的原因D