From be73e2b78857adaf006063275726b69c4c60f0d7 Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期三, 12 十月 2022 11:54:25 +0800 Subject: [PATCH] 买撤策略修改;加入报警功能 --- l2_code_operate.py | 20 +++++++++++++++++--- 1 files changed, 17 insertions(+), 3 deletions(-) diff --git a/l2_code_operate.py b/l2_code_operate.py index 1244d1c..f0efbde 100644 --- a/l2_code_operate.py +++ b/l2_code_operate.py @@ -65,10 +65,11 @@ finally: cls.__lock.release() - @staticmethod - def send_operate(): + @classmethod + def send_operate(cls): redis = L2CodeOperate.getRedis() while True: + cls.set_read_queue_valid() try: data = redis.lpop("code_operate_queue") # print("璇诲彇鎿嶄綔闃熷垪", data, redis.llen("code_operate_queue")) @@ -162,7 +163,8 @@ "data": {"index": int(pos), "code": code, "min_price": float(min_price), "max_price": float(max_price)}} redis = self.redis_manager_.getRedis() - redis.rpush("code_operate_queue", json.dumps({"type": 3, "code": code, "client": client_id, "data": data, "create_time": round(time.time() * 1000)})) + redis.rpush("code_operate_queue", json.dumps( + {"type": 3, "code": code, "client": client_id, "data": data, "create_time": round(time.time() * 1000)})) # 绉婚櫎鐩戞帶 def remove_l2_listen(self, code, msg): @@ -181,6 +183,18 @@ return int(value) return value + # 璁剧疆璇诲彇闃熷垪鏈夋晥 + @classmethod + def set_read_queue_valid(cls): + redis = cls.getRedis() + redis.setex("operate_queue_read_state", 20, 1) + + @classmethod + def is_read_queue_valid(cls): + redis = cls.getRedis() + return redis.get("operate_queue_read_state") is not None + + # 鑾峰彇瀹㈡埛绔鍦ㄧ洃鍚殑浠g爜 def get_listen_codes_from_client(client_id): -- Gitblit v1.8.0