socket() error: Too many open files

daehappy 2003-12-26 10:17:22
自己写的socket程序提示了以上错误。

请教各位大侠:我如何知道此时我打开的socket的数目?如何知道我打开了哪些port?同时如何修改系统能打开的最大数目?

谢谢!!
...全文
462 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
gaoxianfeng 2003-12-26
  • 打赏
  • 举报
回复
好办,那如何办?
进程控制块 可获得 sock fd;
socket 函数 可获得 sock结构 然后 端口

简单点 用个变量记录 方便些
linaxing 2003-12-26
  • 打赏
  • 举报
回复
用netstat
在linux下可以用netstat -p 看到打开端口的程序
daehappy 2003-12-26
  • 打赏
  • 举报
回复
to fierygnu:
redhat 7.2

to icedust:
我的是多线程程序,正在查找问题

to gaoxianfeng:
好办,那如何办?
gaoxianfeng 2003-12-26
  • 打赏
  • 举报
回复
我如何知道此时我打开的socket的数目?如何知道我打开了哪些port?
这两个好办吧。
同时如何修改系统能打开的最大数目?
setrlimit
ulimit
icedust 2003-12-26
  • 打赏
  • 举报
回复
open之后要记得close,要不然达到系统支持的最大socket数目,就会出现上面的错误了
fierygnu 2003-12-26
  • 打赏
  • 举报
回复
什么平台?
gaoxianfeng 2003-12-26
  • 打赏
  • 举报
回复
看socket的数目,可以去/proc/yourpid/fd目录下, 用 ls -l 看看。
rexp 2003-12-26
  • 打赏
  • 举报
回复
楼上的不对,最大连接数是系统参数。
看socket的数目,可以去/proc/youdir/fd目录下, 用 ls -l 看看。
yuanlei1978113 2003-12-26
  • 打赏
  • 举报
回复
listen函数的第二个参数可以指定最大连接数

23,114

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧