You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by to...@apache.org on 2018/03/27 08:46:03 UTC

[09/11] incubator-weex git commit: * [android] fix java.util.ConcurrentModificationException

 * [android] fix java.util.ConcurrentModificationException


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/fc8028c1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/fc8028c1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/fc8028c1

Branch: refs/heads/master
Commit: fc8028c1ff29c3f5bcedd48a53fbc249325f0fb8
Parents: 640c53f
Author: wentao.swt <we...@alibaba-inc.com>
Authored: Mon Mar 19 19:17:23 2018 +0800
Committer: yuhun-alibaba <to...@gmail.com>
Committed: Tue Mar 27 15:59:55 2018 +0800

----------------------------------------------------------------------
 .../com/taobao/weex/bridge/WXBridgeManager.java    | 17 ++++++++---------
 .../com/taobao/weex/bridge/WXModuleManager.java    |  3 ++-
 2 files changed, 10 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/fc8028c1/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java b/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java
index f45150f..cb3bdcd 100644
--- a/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java
+++ b/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java
@@ -2107,28 +2107,27 @@ public void invokeDestoryInstance(String instanceId, String namespace, String fu
           execRegisterFailTask();
           WXEnvironment.JsFrameworkInit = true;
           registerDomModule();
-          WXModuleManager.reload();
           String reinitInfo = "";
           if (reInitCount > 1) {
             reinitInfo = "reinit Framework:";
-            WXExceptionUtils.commitCriticalExceptionRT(null, WXErrorCode.WX_JS_FRAMEWORK_REINIT_SUCCESS,
-                    "initFramework", reinitInfo + "success", null);
+            // WXExceptionUtils.commitCriticalExceptionRT(null, WXErrorCode.WX_JS_FRAMEWORK_REINIT_SUCCESS,
+            //       "initFramework", reinitInfo + "success", null);
           } else {
-//            WXExceptionUtils.commitCriticalExceptionRT(null, WXErrorCode.WX_JS_FRAMEWORK_INIT_SUCCESS.getErrorCode(),
-//                    "initFramework", reinitInfo + "success", null);
+            // WXExceptionUtils.commitCriticalExceptionRT(null, WXErrorCode.WX_JS_FRAMEWORK_INIT_SUCCESS.getErrorCode(),
+            //        "initFramework", reinitInfo + "success", null);
           }
 
         } else {
           if (reInitCount > 1) {
             WXLogUtils.e("[WXBridgeManager] invokeReInitFramework  ExecuteJavaScript fail");
             String err = "[WXBridgeManager] invokeReInitFramework  ExecuteJavaScript fail reinit FrameWork";
-			WXExceptionUtils.commitCriticalExceptionRT(null, WXErrorCode.WX_ERR_JS_REINIT_FRAMEWORK,
-					"initFramework", "reInitCount = " + reInitCount + err, null);
+			// WXExceptionUtils.commitCriticalExceptionRT(null, WXErrorCode.WX_ERR_JS_REINIT_FRAMEWORK,
+			//		"initFramework", "reInitCount = " + reInitCount + err, null);
           } else {
             WXLogUtils.e("[WXBridgeManager] invokeInitFramework  ExecuteJavaScript fail");
             String err = "[WXBridgeManager] invokeInitFramework  ExecuteJavaScript fail";
-			WXExceptionUtils.commitCriticalExceptionRT(null, WXErrorCode.WX_ERR_JS_FRAMEWORK,
-					"initFramework", err, null);
+			// WXExceptionUtils.commitCriticalExceptionRT(null, WXErrorCode.WX_ERR_JS_FRAMEWORK,
+			//		"initFramework", err, null);
           }
         }
       } catch (Throwable e) {

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/fc8028c1/android/sdk/src/main/java/com/taobao/weex/bridge/WXModuleManager.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/bridge/WXModuleManager.java b/android/sdk/src/main/java/com/taobao/weex/bridge/WXModuleManager.java
index 5a8bb89..6bc4af4 100644
--- a/android/sdk/src/main/java/com/taobao/weex/bridge/WXModuleManager.java
+++ b/android/sdk/src/main/java/com/taobao/weex/bridge/WXModuleManager.java
@@ -45,6 +45,7 @@ import java.util.Iterator;
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.ConcurrentMap;
 
 /**
  * Manager class for weex module. There are two types of modules in weex, one is instance-level module,
@@ -56,7 +57,7 @@ public class WXModuleManager {
   /**
    * module class object dictionary
    */
-  private static volatile Map<String, ModuleFactoryImpl> sModuleFactoryMap = new HashMap<>();
+  private static volatile ConcurrentMap<String, ModuleFactoryImpl> sModuleFactoryMap = new ConcurrentHashMap<>();
   private static Map<String, WXModule> sGlobalModuleMap = new HashMap<>();
   private static Map<String, WXDomModule> sDomModuleMap = new HashMap<>();