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/04/16 20:38:35 UTC
svn commit: r1588022 -
/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypePriorities_impl.java
Author: schor
Date: Wed Apr 16 18:38:35 2014
New Revision: 1588022
URL: http://svn.apache.org/r1588022
Log:
[UIMA-3688] strengthen multi-core reliability
Modified:
uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypePriorities_impl.java
Modified: uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypePriorities_impl.java
URL: http://svn.apache.org/viewvc/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypePriorities_impl.java?rev=1588022&r1=1588021&r2=1588022&view=diff
==============================================================================
--- uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypePriorities_impl.java (original)
+++ uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypePriorities_impl.java Wed Apr 16 18:38:35 2014
@@ -50,16 +50,18 @@ public class TypePriorities_impl extends
static final long serialVersionUID = -4773863151055424438L;
- private String mName;
+ private volatile String mName;
- private String mVersion;
+ private volatile String mVersion;
- private String mDescription;
+ private volatile String mDescription;
- private String mVendor;
+ private volatile String mVendor;
- private Import[] mImports = Import.EMPTY_IMPORTS;
+ private volatile Import[] mImports = Import.EMPTY_IMPORTS;
+ // not final or volatile because clone() copies a ref to shared value, and we need that value to be a new instance
+ // Threading: all access synchronized except initial creation during cloning
private List<TypePriorityList> mPriorityLists = new ArrayList<TypePriorityList>();
/**