我正在寻找一种从IPC的一侧调用特定函数的方法。
假设下面的示例代码:
socket = context.socket(zmq.REQ)
socket.connect("tcp://127.0.0.1:8000")
socket.send(resp)
我想指定'resp‘将被转发到的函数,可以吗?如果没有,我怎么能做到这一点呢?
发布于 2013-08-02 04:33:35
我可能误解了你的目标。但是有一种方法可以使用zmq发送多部分消息,这意味着您可以轻松地添加一个额外的字段,您可以在另一端测试该字段,以确定如何处理您的数据。
看看socket.send_multipart
和socket.recv_multipart
吧。http://zeromq.github.io/pyzmq/api/zmq.html#zmq.Socket.send_multipart
使用这些命令,您可以执行以下操作:send_multipart(["description_of_data", data])
,并使用recv_multipart()
在另一端接收列表。您可以检查第一个元素并相应地处理数据。
这个问题有点不清楚,如果您的意思是一种寻址特定接收器的方法,请查看路由器/经销商xrep/xreq套接字类型,它们包括一个路由信封,如果您知道特定端点的身份,则可以在其中针对特定端点。
https://stackoverflow.com/questions/18001760
复制相似问题