You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by sc...@apache.org on 2014/09/16 23:43:59 UTC

svn commit: r1625409 - /uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/impl/ResourceManager_impl.java

Author: schor
Date: Tue Sep 16 21:43:59 2014
New Revision: 1625409

URL: http://svn.apache.org/r1625409
Log:
[UIMA-4012] reduce sync contention.

Modified:
    uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/impl/ResourceManager_impl.java

Modified: uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/impl/ResourceManager_impl.java
URL: http://svn.apache.org/viewvc/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/impl/ResourceManager_impl.java?rev=1625409&r1=1625408&r2=1625409&view=diff
==============================================================================
--- uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/impl/ResourceManager_impl.java (original)
+++ uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/impl/ResourceManager_impl.java Tue Sep 16 21:43:59 2014
@@ -660,6 +660,11 @@ public class ResourceManager_impl implem
    * @see org.apache.uima.resource.ResourceManager#getCasManager()
    */
   public CasManager getCasManager() {
+    //Optimization for case where mCasManager already created
+    // Some sync contention was observed - this makes it less.  UIMA-4012
+    if(mCasManager != null) {
+      return mCasManager;
+    }
     synchronized(casManagerMonitor) {
       if (mCasManager == null) {
         mCasManager = new CasManager_impl(this);