비 정기적 로깅은 비용이 많이 듭니다. 따라서 로깅 임계 값을 높이거나 로깅 임계 값 레벨을 높이면 생산 모드에서 로깅을 줄일 수 있습니다 (모두가 알고 있습니다!)로깅 선점
그러나 로거 명령문에 매개 변수를 제공하기 위해 호출되는 루틴은 어떻습니까?
로거 문을 고려하십시오.
logger.info ("number of windows ="+ wins.size());
여기서 wins.size()는 엄청나게 비싼 작업입니다. 예를 들어 내 (잘못) 이해를 설명하기위한 것입니다.
정보 로깅이 해제되어 있으면 wins.size()가 계속 실행됩니다.
디버깅을 수행 할 때 loginsfo() 전에 먼저 wins.size()가 단계적으로 실행되는 것으로 보입니다. 그렇다면 로거가 꺼져있을 때 로거 문 안의 값 비싼 기능이 실행되지 않도록하기위한 전략은 무엇입니까?