From 6980afa11e80996b2155884a77788faf7d78c484 Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期二, 27 二月 2024 16:59:00 +0800
Subject: [PATCH] zeromq集成测试

---
 test/test_pyzmq.py |   25 +++++++++++--------------
 1 files changed, 11 insertions(+), 14 deletions(-)

diff --git a/test/test_pyzmq.py b/test/test_pyzmq.py
index 910179f..db02845 100644
--- a/test/test_pyzmq.py
+++ b/test/test_pyzmq.py
@@ -69,7 +69,7 @@
         self.socket_client_dict = {}
         # 淇濆瓨浠g爜鍒嗛厤鐨刢lient 鏍煎紡锛歿code:(host, socket)}
         self.code_socket_client_dict = {}
-        self.lock = threading.RLock()
+        self.rlock = threading.RLock()
         context = zmq.Context()
         for host in self.ipchosts:
             socket = context.socket(zmq.REQ)
@@ -78,35 +78,32 @@
 
     # 鑾峰彇
     def __get_available_ipchost(self):
-        try:
-            if len(self.code_socket_client_dict) >= len(self.socket_client_dict):
-                raise Exception("鏃犲彲鐢╤ost")
-            used_hosts = set([self.code_socket_client_dict[k][0] for k in self.code_socket_client_dict])
-            for host in self.socket_client_dict:
-                if host not in used_hosts:
-                    return host, self.socket_client_dict[host]
+        if len(self.code_socket_client_dict) >= len(self.socket_client_dict):
             raise Exception("鏃犲彲鐢╤ost")
-        finally:
-            self.lock.release()
+        used_hosts = set([self.code_socket_client_dict[k][0] for k in self.code_socket_client_dict])
+        for host in self.socket_client_dict:
+            if host not in used_hosts:
+                return host, self.socket_client_dict[host]
+        raise Exception("鏃犲彲鐢╤ost")
 
     # 鍒嗛厤HOST
     def distribute_upload_host(self, code):
-        self.lock.acquire()
+        self.rlock.acquire()
         print("閿佷綇")
         try:
             host_info = self.__get_available_ipchost()
             if host_info:
                 self.code_socket_client_dict[code] = host_info
         finally:
-            self.lock.release()
+            self.rlock.release()
 
     def release_distributed_upload_host(self, code):
-        self.lock.acquire()
+        self.rlock.acquire()
         try:
             if code in self.code_socket_client_dict:
                 self.code_socket_client_dict.pop(code)
         finally:
-            self.lock.release()
+            self.rlock.release()
 
     def upload_data_as_json(self, code, data):
         if code not in self.code_socket_client_dict:

--
Gitblit v1.8.0