芹菜-禁用信号
Celery- Disabling signals
我使用了 celery 信号,它工作正常
@shared_task(name="execute_task")
def execute(*args,**kwargs):
return 2+2
@task_success.connect
def task_success_handler(sender=None, headers=None, body=None, **kwargs):
print(pass)
execute 任务执行后调用任务成功信号,但我想禁用此调用。它可以实现吗?
是的,我们可以做到这一点,celery 信号也带有断开功能,所以你需要做的是
from celery import signals
@shared_task(name="execute_task")
def execute(*args,**kwargs):
signals.task_success.disconnect(task_success_handler)
return 2+2
这样成功函数就不会被调用了
我使用了 celery 信号,它工作正常
@shared_task(name="execute_task")
def execute(*args,**kwargs):
return 2+2
@task_success.connect
def task_success_handler(sender=None, headers=None, body=None, **kwargs):
print(pass)
execute 任务执行后调用任务成功信号,但我想禁用此调用。它可以实现吗?
是的,我们可以做到这一点,celery 信号也带有断开功能,所以你需要做的是
from celery import signals
@shared_task(name="execute_task")
def execute(*args,**kwargs):
signals.task_success.disconnect(task_success_handler)
return 2+2
这样成功函数就不会被调用了