繁体   English   中英

Celery PeriodicTask参数

[英]Celery PeriodicTask arguments

如何以编程方式更改传递给Celery的参数? 我必须在以下代码中进行哪些更改:

from celery.task import PeriodicTask

class MyTask(PeriodicTask):
    run_every = timedelta(seconds=1)
    value = ''
    def run(self, **kwargs):
        print 'Passed value %s' % value

我希望能够在应用程序生命周期内更改value属性。 该值可能是一个字典,但我怀疑它是否会更改任何内容。

为什么要更改参数? 谁会每次都通过争论? 调度程序在指定的调度时间调用run方法。

您可以简单地从数据库或其他任何内容中读取“值”。

def run(self, **kwargs):
    value = get_value_from_database()
    print 'Passed value %s' % value

否则-您可能需要按如下所述创建自定义的Scheduler类: http : //celery.github.com/celery/userguide/periodic-tasks.html#using-custom-scheduler-classes ,并覆盖其某些方法。 。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM