You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2013/06/25 11:08:59 UTC

[6/7] git commit: CAMEL-6485 performance improvement in DefaultCamelContext with thanks to Eric

CAMEL-6485 performance improvement in DefaultCamelContext with thanks to Eric


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/42eedb9c
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/42eedb9c
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/42eedb9c

Branch: refs/heads/camel-2.10.x
Commit: 42eedb9ce0a2c44213a73af66753972997ed06a9
Parents: 5d2ef93
Author: Willem Jiang <ni...@apache.org>
Authored: Tue Jun 25 09:40:02 2013 +0800
Committer: Claus Ibsen <da...@apache.org>
Committed: Tue Jun 25 11:06:33 2013 +0200

----------------------------------------------------------------------
 .../java/org/apache/camel/impl/DefaultCamelContext.java   | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/42eedb9c/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java b/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
index ed4f72a..061813e 100644
--- a/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
+++ b/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
@@ -2334,12 +2334,14 @@ public class DefaultCamelContext extends ServiceSupport implements ModelCamelCon
     }
 
     public ManagementStrategy getManagementStrategy() {
-        synchronized (managementStrategyInitialized) {
-            if (managementStrategyInitialized.compareAndSet(false, true)) {
-                managementStrategy = createManagementStrategy();
+        if (!managementStrategyInitialized.get()) {
+            synchronized (managementStrategyInitialized) {
+                if (managementStrategyInitialized.compareAndSet(false, true)) {
+                    managementStrategy = createManagementStrategy();
+                }
             }
-            return managementStrategy;
         }
+        return managementStrategy;
     }
 
     public void setManagementStrategy(ManagementStrategy managementStrategy) {