'Handle a recv event.'

def _handle_recv(self):

    if self._flushed:
        return
    try:
        msg = self.socket.recv_multipart(zmq.NOBLOCK, copy=self._recv_copy)
    except zmq.ZMQError as e:
        if (e.errno == zmq.EAGAIN):
            pass
        else:
            raise
    else:
        if self._recv_callback:
            callback = self._recv_callback
            self._run_callback(callback, msg)
