客户端示例 ======== 路由-代理客户端示例 ---------------- .. code-block:: python import zmq import json # 连接到路由服务器 context = zmq.Context() socket = context.socket(zmq.DEALER) socket.connect("tcp://localhost:7000") # 提交任务 task = { "MsgType": "MsgTask", "SN": 1, "TaskId": "test-task-001", "ConvertQProg": "[[{'H': [0]}, {'Measure': [[0]]}]]", "Configure": {"Shot": 1000} } # 发送请求 socket.send_json(task) # 接收确认 ack = socket.recv_json() print(f"确认消息: {ack}") # 接收结果(异步) result = socket.recv_json() print(f"任务结果: {result}") 发布-订阅客户端示例 ---------------- .. code-block:: python import zmq import json # 连接到发布服务器 context = zmq.Context() socket = context.socket(zmq.SUB) socket.connect("tcp://localhost:8000") # 订阅主题 'simulator_topic' 以接收所有消息 socket.setsockopt_string(zmq.SUBSCRIBE, b'simulator_topic') # 接收状态更新 while True: # 接收主题 topic = socket.recv() # 接收操作类型 operation = socket.recv() # 接收数据 data = socket.recv_json() print(f"接收消息: topic={topic}, operation={operation}") print(f"数据: {data}")