zoukankan      html  css  js  c++  java
  • too many open files问题

    linux环境下,程序运行时,出现了too many open files的错误。

    通过名字就能看出来,是打开了太多的文件,超过了系统限制。

    ulimit -a

    通过这个命令可以查看当前系统设置的最大句柄数是多少

    可以看到,文件打开数量,最大值是1024,如果再有新文件打开就会报上述错误。

    这个问题主要是一些IO流没有关闭造成的,比如我这出现这个问题的原因就是解压时候ZipFile对象没有close()造成的。

    查看具体是什么没有关闭的方法:

    jps
    

    这个命令能够查看java环境下的正在执行的线程的pid

    然后

    lsof -p XXX >openfiles.log

    上边的XXX填写pid号,如上边jps查询出来的10240、20180等

    lsof -p 10240 >1.log
    lsof -p 20180 >2.log
    lsof -p 26311 >3.log
    lsof -p 9225 >4.log
    lsof -p 10186 >5.log
    lsof -p 10300 >6.log
    

    将信息导入到这些log进行查看,就能观察出来了。

  • 相关阅读:
    实验任务四
    java语言基础第二讲 课程作业02 总结
    java 计算精度处理
    构建之法阅读笔记02
    周活动总结表
    周进度条
    构建之法阅读笔记01
    四则运算软件需求规格说明书
    四则运算2
    周进度条
  • 原文地址:https://www.cnblogs.com/jinzhiming/p/10304694.html
Copyright © 2011-2022 走看看