From 68464c679ae5e1ae35e7e67e3b339ba0f939cbd3 Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期三, 15 三月 2023 14:46:03 +0800 Subject: [PATCH] 选股宝板块优化 --- gpcode_manager.py | 36 ++++++++++++++++++++++++++++++++++-- 1 files changed, 34 insertions(+), 2 deletions(-) diff --git a/gpcode_manager.py b/gpcode_manager.py index c33607e..b1099a8 100644 --- a/gpcode_manager.py +++ b/gpcode_manager.py @@ -80,6 +80,15 @@ return val.get(name) @classmethod + def add_first_code_name(cls, code,name): + val = cls.__get_redis().get("gp_list_names_first") + if not val: + return None + val = json.loads(val) + val[name] = code + cls.set_first_code_names(val) + + @classmethod def get_second_name_code(cls, name): val = cls.__get_redis().get("gp_list_names") if not val: @@ -456,6 +465,14 @@ redis_instance.setex(key, tool.get_expire(), "") +def clear_first_codes(): + redis_instance = __redisManager.getRedis() + redis_instance.delete("gp_list_first") + redis_instance.delete("gp_list_names_first") + redis_instance.delete("first_code_record") + redis_instance.delete("first_code_limited_up_record") + + # 鑾峰彇鍙互鎿嶄綔鐨勪綅缃� def get_can_listen_pos(client_id=0): client_ids = [] @@ -492,6 +509,21 @@ return None, None +# 鑾峰彇鍙互鎿嶄綔鐨勪綅缃� +def get_free_listen_pos_count(): + client_ids = client_manager.getValidL2Clients() + free_count = 0 + for client_id in client_ids: + redis_instance = __redisManager.getRedis() + k = "listen_code-{}-*".format(client_id) + keys = redis_instance.keys(k) + for key in keys: + code = redis_instance.get(key) + if not code: + free_count += 1 + return free_count + + # 鑾峰彇姝e湪鐩戝惉鐨勪唬鐮佺殑浣嶇疆 def get_listen_code_pos(code): redis_instance = __redisManager.getRedis() @@ -523,7 +555,7 @@ def is_listen_full(): clients = client_manager.getValidL2Clients() codes = get_listen_codes() - return len(codes) >= 8 * len(clients) + return len(codes) >= constant.L2_CODE_COUNT_PER_DEVICE * len(clients) # 鏄惁姝e湪鎿嶄綔 @@ -559,6 +591,6 @@ if __name__ == '__main__': - print(get_code_name("603042")) + print(get_free_listen_pos_count()) print(get_name_code("鍗庤剦绉戞妧")) print(get_name_codes()) -- Gitblit v1.8.0