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