看项目组长的代码时,发现了他用了如下的一小段:
if(Logger.isLogging()) {
Logger.log(…….);
}
非常好奇,为啥要加上一个判断呢,上网查了查,有这样的说法。产生日志的代价很昂贵,在产生日志消息之后才会去看配置文件,是否允许使用这种级别的日志,如果禁用了就把日志消息抛弃。解决这个问题的标准方式是在构造昂贵的日志消息之前,首先检查是否启用了日志
if(Logger.isLogging()) {
Logger.log(…….);
}
非常好奇,为啥要加上一个判断呢,上网查了查,有这样的说法。产生日志的代价很昂贵,在产生日志消息之后才会去看配置文件,是否允许使用这种级别的日志,如果禁用了就把日志消息抛弃。解决这个问题的标准方式是在构造昂贵的日志消息之前,首先检查是否启用了日志
本文探讨了一种优化日志记录的方法:在构造复杂日志消息前先检查日志是否被启用。这种方法可以避免不必要的资源消耗,特别是在日志级别较高且可能被禁用的情况下。
722

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



