我正在Linux系统上运行一个Java应用程序。我注意到应用程序似乎消耗了很多文件句柄(几天后我得到了“太多打开的文件”)。
因此,当我使用'lsof'命令转储与Java应用程序相关的所有文件时,我得到如下结果:
java 2690 root 239u REG 3,2 428057 94300 /tmp/jar_cache5782499018536796385.tmp (deleted)
java 2690 root 240u REG 3,2 58955 94360 /tmp/jar_cache3818842806647031366.tmp (deleted)
java 2690 root 241u REG 3,2 28673 94301 /tmp/jar_cache8793213887943479521.tmp (deleted)
java 2690 root 242u REG 3,2 67115 94302 /tmp/jar_cache3648070144390426051.tmp (deleted)
我这里只展示了4个,但实际上有87个,而且这个数字会随着时间的推移而增长。
正如上面的输出所说,它们被删除了,我确认它们在文件系统中不存在。