| | |
| | | import l2.l2_data_util |
| | | |
| | | |
| | | def __read_server_pipe(pipe): |
| | | if pipe: |
| | | while True: |
| | | value = pipe.recv() |
| | | if value is not None: |
| | | value = json.loads(value) |
| | | if value.get("type") == "clear_l2": |
| | | code = value["data"]["code"] |
| | | print("清除l2数据", code) |
| | | if len(code) != 6: |
| | | continue |
| | | l2_data_manager.clear_l2_data(code) |
| | | # 删除level2的数据 |
| | | if l2.l2_data_util.local_today_datas and code in l2.l2_data_util.local_today_datas: |
| | | l2.l2_data_util.local_today_datas.pop(code) |
| | | if l2.l2_data_util.local_latest_datas and code in l2.l2_data_util.local_latest_datas: |
| | | l2.l2_data_util.local_latest_datas.pop(code) |
| | | |
| | | time.sleep(0.1) |
| | | |
| | | |
| | | # 交易服务 |
| | |
| | | |
| | | |
| | | # 主服务 |
| | | def createServer(pipe_juejin, pipe_gui): |
| | | def createServer(): |
| | | print("create Server") |
| | | |
| | | t1 = threading.Thread(target=lambda: __read_server_pipe(pipe_gui), daemon=True) |
| | | t1.start() |
| | | |
| | | laddr = "", 9001 |
| | | tcpserver = MyThreadingTCPServer(laddr, MyBaseRequestHandle, pipe_juejin=pipe_juejin) # 注意:参数是MyBaseRequestHandle |
| | | tcpserver = MyThreadingTCPServer(laddr, MyBaseRequestHandle, pipe_juejin=None) # 注意:参数是MyBaseRequestHandle |
| | | # tcpserver.handle_request() # 只接受一个客户端连接 |
| | | tcpserver.serve_forever() # 永久循环执行,可以接受多个客户端连接 |
| | | |
| | |
| | | |
| | | |
| | | if __name__ == '__main__': |
| | | # tradeServerProcess = multiprocessing.Process(target=createTradeServer) |
| | | serverProcess = multiprocessing.Process(target=createServer, args=(None, None,)) |
| | | jueJinTradeProcess = multiprocessing.Process(target=trade_juejin.run) |
| | | |
| | | # tradeServerProcess.start() |
| | | serverProcess = multiprocessing.Process(target=createServer) |
| | | serverProcess.start() |
| | | jueJinTradeProcess.start() |
| | | # 将tradeServer作为主进程 |
| | | createTradeServer() |