本文整理汇总了Python中zmq.eventloop.zmqstream.ZMQStream.recv_multipart方法的典型用法代码示例。如果您正苦于以下问题:Python ZMQStream.recv_multipart方法的具体用法?Python ZMQStream.recv_multipart怎么用?Python ZMQStream.recv_multipart使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类zmq.eventloop.zmqstream.ZMQStream
的用法示例。
在下文中一共展示了ZMQStream.recv_multipart方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: ZMQBaseSocket
# 需要导入模块: from zmq.eventloop.zmqstream import ZMQStream [as 别名]
# 或者: from zmq.eventloop.zmqstream.ZMQStream import recv_multipart [as 别名]
class ZMQBaseSocket(object):
"""
Base socket class for zmq sockets.
"""
def __init__(self, socket, endpoint):
"""
:param socket: ZeroMQ socket.
:type socket: zmq.Context.socket
:param endpoint: Endpoint to bind or connect the socket to.
:type endpoint: str
"""
self._socket = socket
self._endpoint = endpoint
def run(self):
"""
Base method that connects or binds a socket to self._endpoint.
Sub classes must override this method.
"""
raise NotImplementedError(self.run)
def wrap_zmqstream(self):
"""
Wraps self._socket into ZMQStream socket.
"""
self._socket = ZMQStream(self._socket)
def register_handler(self, method, callback, *args, **kwargs):
"""
Registers a callback for a particular method.
:param method: The method to which the callback will be attached.
:type method: str
:param callback: The callback method.
:type callback: function
"""
if isinstance(self._socket, ZMQStream):
getattr(self._socket, method)(callback)
else:
raise TypeError("Not a ZMQStream socket.")
def send(self, msg):
"""
Wrapper over "socket.send_multipart()".
:param msg: Message to be sent.
:type msg: list
:return: Return Value of send_multipart()
:rtype: None or MessageTracker
"""
# Performing type checking as it is fairly easy to just send a
# str in param msg.
if not isinstance(msg, list):
raise TypeError("param msg expected of <type 'list'>. Found %s."
% (type(msg)))
return self._socket.send_multipart(msg)
def recv(self):
"""
Wrapper over "socket.recv_multipart()".
:return: Received message.
:rtype: list
"""
return self._socket.recv_multipart()
def close(self):
"""
Wrapper to close the socket.
"""
self._socket.close()