java.net.SocketException No buffer space available的解决办法及总结
作者Attilax 艾龙, EMAIL:1466519819@qq.com
来源:attilax的专栏
地址:http://blog.csdn.net/attilax
java.net.SocketException No buffer space available (maximum connections reached?)
64位机器。
原因:
socket连接过多,达到了单个 socket buffer space内存最大值。。
操作系统有它允许持有的最大文件句柄数,而在网络连接的过程中,每个socket请求都要占用一个文件句柄资源,如果没有及时释放,则可能会耗尽文件句柄资源.
解决:
1.windows 增加最大句柄》》18000
2.taskbar 查看进程句柄数量...
3.查看进程打开的socket conn amount( use netstat+grep)
netstat -nao | grep pid
grep不是win7的exe。。需要从delphi7 提取...100 KB (102,400 字节)
4.估计conn leak 了.....