[英]when celery task will be execute if we call task with .delay()
我的朋友一直在談論用芹菜做一些耗時的工作。因為我沒有計算機科學,所以我無法准確了解芹菜任務的執行時間。 在celery文件中,在調用.delay()時討論守護進程,但是我找不到什么是守護進程,最后如果我們通過.delay()調用芹菜任務將會執行它? :)
例如,當我執行my_task時,我有以下代碼? function.py:
def test():
my_task.delay()
while second<10:
second += 1 # assume this part take a second
1 - 完全在test()
函數完成時(在test()
調用后約10秒)
2 - 在while loop
中間
3-完成test()
和請求不是太多,服務器有時間和資源來完成任務! (也許芹菜很聰明,知道執行任務的最佳時間)
4-每當想要:)
我沒有指出的正確方法。 :)
如果它取決於配置我必須告訴我使用芹菜文檔的默認配置。謝謝你。
想象一下,你沒有單獨完成這項任務,而是幾項任務。 如果使用my_task.delay()
調用它, my_task.delay()
所有這些任務放在隊列中。 現在有幾個工人只選擇第一個打開的任務並執行它們。
所以正確的答案是“只要負責任的工人有空”。 這可能會在您進入while second<10:
-loop之前立即進行,但如果工作人員當前正忙,也可能需要幾秒鍾或幾分鍾。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.