我下面有可成功运行python的python代码-python pub / sub zeromq
我可以通过c ++订阅此python服务器吗?我也添加了c ++客户端代码,这是行不通的
Python:
def send_array_and_str(socket, img, string, flags=0):
global count
print(count , " sended")
## numpy array gönderirken shape bilgilerini de msg olarak eklemek lazım
md = dict(dtype=str(img.dtype), shape=img.shape)
socket.send_string(str(count), flags | zmq.SNDMORE)
socket.send_string(string, flags | zmq.SNDMORE)
socket.send_json(md, flags | zmq.SNDMORE)
socket.send(img, flags)
count += 1
# print(count)
return
context = zmq.Context()
socket = context.socket(zmq.PUB)
socket.bind("tcp://*:5667")
C ++
zmq::socket_t subscriber (context, ZMQ_SUB);
subscriber.connect("tcp://localhost:5556");
zmq::message_t update;
subscriber.recv(&update);
total_temp += temperature;
Q:“我可以通过c ++订阅此python服务器吗?”
哦,确定可以。
上面提供的客户端代码无法正常工作,实际上,它确实按照API的定义可以正常工作,因为您确实没有对SUB
端进行订阅。
因此它确实没有收到任何东西,完全合规并且符合记录的ZeroMQ API。