>>> def elp(min):
... when = datetime.now() + timedelta(minutes=min)
... print when
... r = add.apply_async(args=[500,500],eta=when)
... start = time.time()
... r.get()
... end = time.time()
... elapsed = end-start
... print elapsed
...
>>> elp(10)
2014-11-08 04:38:01.745000
1.00200009346
使用倒计时时
>>> def elp_countdown(min):
... r = add.apply_async(args=[500,500],countdown=(min*60))
... start = time.time()
... r.get()
... end = time.time()
... elapsed = end-start
... print elapsed
...
>>> elp_countdown(0.5)
30.1380000114
为什么使用eta时任务的执行速度比预期的要快?
我的添加任务如下,
@task()
def add(x, y):
return x + y
芹菜版: 3.1.16 (芹菜(
因此,经过一些研究和大量阅读,事实证明我需要将 UTC 日期时间传递给芹菜,因为它的时区默认配置为 UTC。
如果有人想知道,请更改为:
when = datetime.utcnow() + timedelta(minutes=min)
而不是
when = datetime.now() + timedelta(minutes=min)
将使其正常工作。