这个项目已经交给我了,所以我不太了解它。有在使用日志(java.util.logging.Logger中)的方法,它创建了两个日志文件:关闭日志文件
第一个文件:fileName.log
第二个文件:fileName.log.lck
在Linux中,当我做lsof
时,我看到这两个文件是开放的。我如何关闭这两个文件?
我想关闭这些文件的原因是这种方法每天运行多次,几个星期后打开文件的数量达到限制(约1000),此时我们的系统停止工作。当我们重新启动我们的进程(进行日志记录的“作业控制器”)时,打开的日志文件数将变为0,并且它会再次运行。
这是什么做是为了做记录
private static Logger log = Logger.getLogger(MyClass.class.getPackage().getName());
try{
log.logp(Level.SEVERE, "com.MyClass", "run", "It failed");
}
这就是我试图做关闭在finally块的文件,但它没有工作
finally{
Handler[] handler = log.getHandlers();
for(Handler h: handler){
h.close();
}
}
为什么要关闭这些文件? – jdevelop
关闭这些文件可能会对您造成问题。 –
几周后,当打开的文件数量达到一定限制(我认为它大约为1000)后,系统崩溃了。因此,当我们重新启动进程(作业控制器)时,打开的文件数量将回到0,一切正常。我们不需要每隔一段时间手动重新启动该过程,而是希望我们的代码能够执行此操作。 – Susie