- def receive(self, timeout=0, queue_name=None):
- if queue_name is None:
- queue_name = self.queue_name
- def _handle_timeout(signum, frame):
- raise TimeoutError(os.strerror(errno.ETIME))
- signal.signal(signal.SIGALRM, _handle_timeout)
- signal.alarm(timeout)
- res = None
- try:
- method, properties, body = self.connection.channel.consume(queue_name).next()
- res = Message(self.connection, method, properties, body)
- finally:
- signal.alarm(0)
- return res
+ def receive(self, timeout=0):
+ return self.connection.receive(queues=[self.queue_name], timeout=timeout)