Repository: logging-log4j2 Updated Branches: refs/heads/master a329d73df -> 19ca49174
reverted for-each loop to normal for loop in performance-sensitive code Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/09934649 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/09934649 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/09934649 Branch: refs/heads/master Commit: 099346490f397ee04d8d823ece66c52eb3102e4b Parents: 3f5cab4 Author: rpopma <[email protected]> Authored: Sat Sep 27 23:23:24 2014 +0900 Committer: rpopma <[email protected]> Committed: Sat Sep 27 23:23:24 2014 +0900 ---------------------------------------------------------------------- .../src/main/java/org/apache/logging/log4j/MarkerManager.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/09934649/log4j-api/src/main/java/org/apache/logging/log4j/MarkerManager.java ---------------------------------------------------------------------- diff --git a/log4j-api/src/main/java/org/apache/logging/log4j/MarkerManager.java b/log4j-api/src/main/java/org/apache/logging/log4j/MarkerManager.java index 72389ba..170ed4a 100644 --- a/log4j-api/src/main/java/org/apache/logging/log4j/MarkerManager.java +++ b/log4j-api/src/main/java/org/apache/logging/log4j/MarkerManager.java @@ -323,7 +323,9 @@ public final class MarkerManager { */ private static boolean contains(final Marker parent, final Marker... localParents) { //noinspection ForLoopReplaceableByForEach - for (final Marker marker : localParents) { + // performance tests showed a normal for loop is slightly faster than a for-each loop on some platforms + for (int i = 0, localParentsLength = localParents.length; i < localParentsLength; i++) { + final Marker marker = localParents[i]; if (marker == parent) { return true; }
