* [iOS] mark js vm garbage collect when instance destroyed

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

Branch: refs/heads/master
Commit: c504e355e580866579995a109d8006394a0615d1
Parents: c41a949
Author: acton393 <zhangxing610...@gmail.com>
Authored: Fri Dec 15 15:55:36 2017 +0800
Committer: acton393 <zhangxing610...@gmail.com>
Committed: Wed Dec 20 17:47:55 2017 +0800

----------------------------------------------------------------------
 ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.m | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c504e355/ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.m
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.m 
b/ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.m
index 8d7e3fb..5be22d5 100644
--- a/ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.m
+++ b/ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.m
@@ -358,7 +358,7 @@ typedef enum : NSUInteger {
     } else {
         // Fallback
     }
-    [WXBridgeContext mountContextEnvironment:_instanceJavaScriptContext];
+    [WXBridgeContext mountContextEnvironment:self.instanceJavaScriptContext];
 }
 
 - (void)refreshInstance:(id)data
@@ -388,12 +388,11 @@ typedef enum : NSUInteger {
     
     [WXTracingManager destroyTraincgTaskWithInstance:self.instanceId];
 
-    
     [WXPrerenderManager removePrerenderTaskforUrl:[self.scriptURL 
absoluteString]];
     [WXPrerenderManager destroyTask:self.instanceId];
-    
     [[WXSDKManager bridgeMgr] destroyInstance:self.instanceId];
-
+    JSGarbageCollect(_instanceJavaScriptContext.JSGlobalContextRef);
+    _instanceJavaScriptContext = nil;
     if (_componentManager) {
         [_componentManager invalidate];
     }

Reply via email to