From d9a3b754d14f93375cd3d91afa49be8deb07975c Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期三, 26 六月 2024 16:37:15 +0800
Subject: [PATCH] 订阅bug修改

---
 huaxin_client/code_queue_distribute_manager.py |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/huaxin_client/code_queue_distribute_manager.py b/huaxin_client/code_queue_distribute_manager.py
index fd33373..4105bd5 100644
--- a/huaxin_client/code_queue_distribute_manager.py
+++ b/huaxin_client/code_queue_distribute_manager.py
@@ -70,7 +70,7 @@
         return None
 
     # 涓轰唬鐮佸垎閰嶉槦鍒�
-    def distribute_callback(self, code):
+    def distribute_callback(self, code, target_codes=None):
         if code in self.distibuted_code_callback_dict:
             return self.distibuted_code_callback_dict.get(code)
         callback_info = self.get_available_callback()
@@ -78,8 +78,12 @@
             distibuted_callbacks_ids = set()
             for code in self.distibuted_code_callback_dict:
                 distibuted_callbacks_ids.add(self.distibuted_code_callback_dict[code][0])
+                # 濡傛灉浠g爜娌″湪鐩爣浠g爜涓氨绉婚櫎
+                if target_codes and code not in target_codes:
+                    self.release_distribute_callback(code)
             logger_local_huaxin_l2_error.info(f"宸茬粡鍒嗛厤鐨勪唬鐮侊細{self.distibuted_code_callback_dict.keys()}")
             logger_local_huaxin_l2_error.info(f"宸茬粡鍒嗛厤鐨刢allbackid锛歿distibuted_callbacks_ids}")
+            # 鍒犻櫎宸茬粡娌″湪鐩爣浠g爜涓殑鍒嗛厤
             raise Exception("鏃犲彲鐢ㄧ殑鍥炶皟瀵硅薄")
         self.distibuted_code_callback_dict[code] = callback_info
         return callback_info

--
Gitblit v1.8.0