一、问题描述调试问题的时候,socket还是连接不上,返回的句柄是1030左右,一开始还好,运行一段时间后,问题来了出现了。2.问题分析问题已经有一段时间了,我忘了我是怎么想的,是超出了文件描述符的限制。可能基于句柄的值或返回的错误代码。嗯。linux下文件描述符的最大限制默认为1024,可以通过命令[root@localhost~]#ulimit-n1024查看。该值可以修改。进程的文件描述符可以通过[root@localhost~]#ls-al/proc/13623/fd|wc-l59输出的数字就是进程的文件描述符个数。linux下修改文件描述符限制的方法:临时修改使用:ulimit-HSn65536其实一般1024的限制就够用了。至于超过这个值,一般是程序有bug。调试程序中每新建一个socket,就打开一个新的文件,但是忘记关闭,导致越来越多。
