我如何从芹菜任务中判断任务是否仅从应用方法调用,而不是从apply_async(或延迟)调用。
您可以查看
任务中self.request
的is_eager
或called_directly
属性(文档目前对差异不是很清楚):
@app.task(bind=True)
def task_with_context(self, *args, **kwargs):
print self.request.is_eager, self.request.called_directly