Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何覆盖主菜上芹菜的呼叫?_Python_Django_Celery - Fatal编程技术网

Python 如何覆盖主菜上芹菜的呼叫?

Python 如何覆盖主菜上芹菜的呼叫?,python,django,celery,Python,Django,Celery,我一直在使用一个抽象任务,并重写\uuu call\uu方法,以便在执行每个任务之前处理一些事情,如下所示: class CoreTaskHandler(Task): abstract = True def __call__(self, *args, **kwargs): 但是\uuuu调用\uuuu方法在工作线程上执行,我需要一些重写,在每次任务“延迟”时将在main而不是工作线程上执行 有人知道我该怎么做吗?我通过覆盖任务中的apply\u sync方法解决了这个问题: c

我一直在使用一个抽象任务,并重写
\uuu call\uu
方法,以便在执行每个任务之前处理一些事情,如下所示:

class CoreTaskHandler(Task):
    abstract = True
    def __call__(self, *args, **kwargs):
但是
\uuuu调用\uuuu
方法在工作线程上执行,我需要一些重写,在每次任务“延迟”时将在main而不是工作线程上执行


有人知道我该怎么做吗?

我通过覆盖任务中的apply\u sync方法解决了这个问题:

class CoreTaskHandler(Task):
    abstract = True
    def apply_async(self, *args, **kwargs):

        ........

        return super(CoreTaskHandler, self).apply_async(*args, **kwargs)