java.net.ConnectException:系统缺少足够的缓冲区空间或者队列已满

时间:2012-08-13 14:36:08

标签: java windows sockets

我试图通过以下代码ping各种IP来检查连接性。

ipAdd = InetAddress.getByName(ipAddress);
            boolean isConnected = ipAdd.isReachable(3000);

但是我收到了这个错误。

java.net.ConnectException: An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full

大约有1000个线程同时执行此过程。我曾考虑将这些IP保留在队列中。但为此我想知道我可以使用的最大线程数。有没有办法找出缓冲区空间,以便我可以找出将同时触发将运行上述代码的线程数。 除了排队方法之外,我将不胜感激/解决方案。

1 个答案:

答案 0 :(得分:0)

我猜这个例外的原因是您已经超出了应用程序可以使用的端口限制 你关闭了吗?