kombu|kombu 如何判断一个 message 是否 acknowledged/requeued/rejected

直接使用 message 的 acknowledged 属性就好了

if not message.acknowledged: message.ack()

【kombu|kombu 如何判断一个 message 是否 acknowledged/requeued/rejected】当我们使用 acknowledged 的时候,其实干的是下面的事情:
kombu/message.py
@property def acknowledged(self): """Set to true if the message has been acknowledged.""" return self._state in ACK_STATES

ACK_STATES 是什么呢?
kombu/message.py
ACK_STATES = {'ACK', 'REJECTED', 'REQUEUED'}

可以看到,已经有三个状态了哦

    推荐阅读