Ben*_*nch 4 java lambda logging log4j log4j2
所述的Log4j 2手册给出了如何使用lambda表达式为“懒记录”的一个例子:
logger.trace("Some long-running operation returned {}", () -> expensiveOperation());
Run Code Online (Sandbox Code Playgroud)
它还给出了如何使用格式参数来避免不必要的字符串连接的示例:
logger.debug("Logging in user {} with birthday {}", user.getName(), user.getBirthdayCalendar());
Run Code Online (Sandbox Code Playgroud)
我的问题:我可以通过简单地提供一个带有普通字符串连接方法的 lambda 来获得相同的性能优势吗?
logger.trace(() -> "Concatting " + user.getName() + " with " + expensiveOperation());
Run Code Online (Sandbox Code Playgroud)
在你的例子中表现最好的是
logger.trace("Concatting {} with {}", () -> user.getName(), () -> expensiveOperation());
Run Code Online (Sandbox Code Playgroud)
这边走
| 归档时间: |
|
| 查看次数: |
1865 次 |
| 最近记录: |