0

我正在尝试通过以下代码 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 保留在队列中。但为此我想知道我可以使用的最大线程数。有没有办法找出缓冲区空间,以便我可以计算出将同时触发运行上述代码的线程数。除了排队方法之外,我将不胜感激任何其他解决方法/解决方案。

4

1 回答 1

0

我猜这个异常的发生是因为你已经超出了你的应用程序可以使用的端口限制。
你关闭你的连接吗?

于 2012-08-13T14:41:05.907 回答