Author: sdumitriu
Date: 2007-12-12 14:20:15 +0100 (Wed, 12 Dec 2007)
New Revision: 6348

Modified:
   xwiki-platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/XWiki.java
Log:
[performance] Improve synchronized code.


Modified: 
xwiki-platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/XWiki.java
===================================================================
--- xwiki-platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/XWiki.java 
2007-12-12 12:36:24 UTC (rev 6347)
+++ xwiki-platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/XWiki.java 
2007-12-12 13:20:15 UTC (rev 6348)
@@ -233,13 +233,15 @@
 
         try {
             xwikicfg = getConfigPath();
-            synchronized (XWiki.class) {
-                xwiki = (XWiki) econtext.getAttribute(xwikiname);
-                if (xwiki == null) {
-                    InputStream xwikicfgis =
-                        XWiki.readXWikiConfiguration(xwikicfg, econtext, 
context);
-                    xwiki = new XWiki(xwikicfgis, context, 
context.getEngineContext());
-                    econtext.setAttribute(xwikiname, xwiki);
+            xwiki = (XWiki) econtext.getAttribute(xwikiname);
+            if (xwiki == null) {
+                synchronized (XWiki.class) {
+                    if (xwiki == null) {
+                        InputStream xwikicfgis =
+                            XWiki.readXWikiConfiguration(xwikicfg, econtext, 
context);
+                        xwiki = new XWiki(xwikicfgis, context, 
context.getEngineContext());
+                        econtext.setAttribute(xwikiname, xwiki);
+                    }
                 }
             }
             context.setWiki(xwiki);

_______________________________________________
notifications mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/notifications

Reply via email to