diff --git a/designer-base/src/main/java/com/fr/design/env/RemoteWorkspace.java b/designer-base/src/main/java/com/fr/design/env/RemoteWorkspace.java index 24b79e418c..565dd14c89 100644 --- a/designer-base/src/main/java/com/fr/design/env/RemoteWorkspace.java +++ b/designer-base/src/main/java/com/fr/design/env/RemoteWorkspace.java @@ -1,19 +1,21 @@ package com.fr.design.env; +import com.fr.base.operator.common.CommonOperator; import com.fr.cluster.engine.rpc.remote.ClusterOperator; import com.fr.design.i18n.Toolkit; -import com.fr.base.operator.common.CommonOperator; import com.fr.rpc.ExceptionHandler; import com.fr.rpc.RPCInvokerExceptionInfo; import com.fr.stable.AssistUtils; import com.fr.workspace.WorkContext; +import com.fr.workspace.WorkRpcContext; import com.fr.workspace.Workspace; import com.fr.workspace.connect.WorkspaceClient; import com.fr.workspace.connect.WorkspaceConnection; import com.fr.workspace.connect.WorkspaceConnectionInfo; -import com.fr.workspace.server.authority.decision.DecisionOperator; import com.fr.workspace.engine.rpc.WorkspaceProxyPool; import com.fr.workspace.pool.WorkObjectPool; +import com.fr.workspace.server.authority.decision.DecisionOperator; + import javax.swing.SwingWorker; /** @@ -134,7 +136,11 @@ public class RemoteWorkspace implements Workspace { @Override public void close() { + swingWorker.execute(); + + // 关闭时移除上下文 + WorkRpcContext.removeContext(client.getConnection()); } @Override