From db888743b73250d51e7e0d362b6c4bc9b5dd9a76 Mon Sep 17 00:00:00 2001 From: JIAKUNHAO Date: Thu, 24 Nov 2022 10:56:11 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=A8=E5=B1=80=E5=8F=98=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/configs/global_var.py | 6 ++++-- app/utils/websocket_tool.py | 12 ++++++------ 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/app/configs/global_var.py b/app/configs/global_var.py index 2a2dfe0..9f75d5b 100644 --- a/app/configs/global_var.py +++ b/app/configs/global_var.py @@ -8,8 +8,8 @@ """ import multiprocessing -global active_connections -global active_connections_dist + + def _init(): # 初始化 # 中断标志 @@ -17,9 +17,11 @@ def _init(): # 初始化 _global_dict = {} # ws列表存储 + global active_connections active_connections = multiprocessing.Manager().list() # ws字典存储 + global active_connections_dist active_connections_dist = multiprocessing.Manager().dict() diff --git a/app/utils/websocket_tool.py b/app/utils/websocket_tool.py index e8863cb..96d990f 100644 --- a/app/utils/websocket_tool.py +++ b/app/utils/websocket_tool.py @@ -20,10 +20,10 @@ class WebsocketUtil: # 等待连接 msg = ws.receive() # 存储ws连接对象 - global active_connections + # global active_connections # active_connections = get_active_connections() active_connections.append(ws) - global active_connections_dist + # global active_connections_dist # active_connections_dist = get_active_connections_dist() if id in active_connections_dist: active_connections_dist[id].append(ws) @@ -35,9 +35,9 @@ class WebsocketUtil: # ws关闭时 移除ws对象 if ws.closed: if ws in active_connections_dist.values(): - global active_connections + # global active_connections active_connections.remove(ws) - global active_connections_dist + # global active_connections_dist active_connections_dist[id].pop(ws) @staticmethod @@ -47,13 +47,13 @@ class WebsocketUtil: def broadcast(self, message: str): # 广播消息 - global active_connections + # global active_connections for connection in active_connections: connection.send(message) def send_message_proj_json(self, message: Union[str, int, List, Dict], id: str): # 广播该项目的消息 - global active_connections_dist + # global active_connections_dist for connection in active_connections_dist[id]: try: connection.send(json.dumps(message, cls=MyEncoder, indent=4), )