1、背景
Java程序运行在Unix/Linux环境下,并且该Java程序需要对文件做大量的操作,则会产生这样的异常。
2、原因
Unix/Linux环境下有文件句柄的限制,可以使用ulimit -n查看当前环境允许打开的文件句柄数量,默认为1024。但是在我们的Java程序并发接近于或者多余1024而同时又在频繁的读写文件,所以会出现以上异常,解决方式是按实际需要增大对文件句柄的限制数。
ulimit –n 32768
本文介绍了在Unix/Linux环境下,Java程序因文件句柄限制导致的问题及解决方案。当Java程序并发接近默认1024的文件句柄限制并频繁读写文件时,可能会出现异常。通过调整ulimit设置增加文件句柄限制数可以解决问题。
1、背景
Java程序运行在Unix/Linux环境下,并且该Java程序需要对文件做大量的操作,则会产生这样的异常。
2、原因
Unix/Linux环境下有文件句柄的限制,可以使用ulimit -n查看当前环境允许打开的文件句柄数量,默认为1024。但是在我们的Java程序并发接近于或者多余1024而同时又在频繁的读写文件,所以会出现以上异常,解决方式是按实际需要增大对文件句柄的限制数。
ulimit –n 32768

被折叠的 条评论
为什么被折叠?