簡體   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