2017-07-27 27 views
-1

我有一段類似的代碼後,下面的蟒蛇:threading.Timer是沒有得到所謂的指定時間

class Job(): 
    def start(): 
    from threading import Timer 
    t = Timer(10.0, self.cancel) 
    t.start() 
    self.status = "Started" 
    submitChildTasks() #----> Submits child celery tasks 

作業實例本身是芹菜的任務,可以有多個孩子芹菜任務。我需要取消Job及其所有子任務的執行。爲此我需要執行cancel。我懷疑Job.start()結束t即將死亡。有沒有辦法來處理它。當't'正在等待執行cancel時,我想要執行子任務。 但cancel沒有被調用。有什麼我做錯了嗎?

任何指導,高度讚賞。提前致謝。

+0

你的代碼工作正常!可能還有其他問題可以提供更多細節嗎? –

回答

0

既然你沒有張貼所有我已經添加了這些代碼主要是代碼的代碼,你沒有張貼

from threading import Timer 

def cancel(): 
    print 'cancel called' 

t = Timer(10.0, cancel) 
t.start() 

此代碼將等待10秒計時器預期。也許這個問題與缺課有關?如果這仍然沒有幫助,請添加您的代碼。