我有一个持久的事件驱动的 HTTP 上传程序(热文件夹),它会在每个操作上写入日志。它会无限期地运行,直到用户决定关闭它。
为了确保在应用程序关闭时关闭日志,我编写了程序,因此每次写入日志时,它都会打开日志文件,写入它,然后关闭日志。
像这样:
fh = new FileHandler(logName, true);
fh.setFormatter(new MyCustomFormatter());
logger.addHandler(fh);
logger.info(message);
logger.removeHandler(fh);
fh.close();
最近,我考虑通过在上传作业期间打开日志(可能有数百次写入日志)然后在作业完成时关闭来减少打开/关闭的次数。
长话短说,我期望从中获得多少性能提升?是否有其他选项可以确保应用程序在没有未关闭的日志文件的情况下关闭?