我有多个线程来更新全局定义的celery任务对象的状态。对于celery_task.update_state
,失败的地方是expected bytes-like object but found NoneType
。
这是代码段:
def increment_ticket_served_count():
with TICKETS_LOCK:
global TOTAL_TICKETS_SERVED
TOTAL_TICKETS_SERVED += 1
STATE_MANAGER.update_state(state='IN_PROGRESS',
meta={'current': TOTAL_TICKETS_SERVED})
这些变量是全局定义的
def setup_state_manager(self):
global STATE_MANAGER
STATE_MANAGER = self
STATE_MANAGER.update_state(state='IN_PROGRESS')
logging.debug('Setting up State Manager')
TICKETS_LOCK = threading.Lock()
TOTAL_TICKETS_SERVED = 0
STATE_MANAGER = None
在celery文档上找不到任何与此相关的信息。有提示吗?