def METHOD_NAME(self, wait=60, vtimeout=60):
    while True:
        m = self.queue.read(vtimeout)
        if m:
            task = Task.get_by_id(m.get_body())
            if task:
                if not task.message_id or m.id == task.message_id:
                    boto.log.info('Task[%s] - read message %s' % (task.name, m.id))
                    task.run(m, vtimeout)
                else:
                    boto.log.info('Task[%s] - found extraneous message, ignoring' % task.name)
        else:
            time.sleep(wait)