def mqtt_receive(self, topic=None, payload=None, **kwargs):
try:
# Synchronous message processing
#return self.process_message(topic, payload, **kwargs)
# Asynchronous message processing
#deferred = threads.deferToThread(self.process_message, topic, payload, **kwargs)
# Asynchronous message processing using different thread pool
deferred = self.thimble.process_message(topic, payload, **kwargs)
deferred.addErrback(self.mqtt_receive_error, topic, payload)
return deferred
except Exception:
log.failure(u'Processing MQTT message failed. topic={topic}, payload={payload}', topic=topic, payload=payload)
评论列表
文章目录