如何使用celery实现apply_async的异步延迟执行任务apply_anysc?
- 内容介绍
- 文章标签
- 相关推荐
本文共计620个文字,预计阅读时间需要3分钟。
描述:`delay()`和`apply_async()`都是执行异步任务的函数,但它们在用法上有所区别。实际上,两者都是执行异步任务的方法,`delay()`是`apply_async()`的简化版。`delay()`传递的参数比`apply_async()`能传递的参数少一些。
区别:`delay()`和`apply_async()`都是执行异步任务的,但`delay()`是`apply_async()`的简化版,传递的参数较少。
描述
首先说下异步任务执行delay()和apply_anysc()两者区别,其实两者都是执行异步任务的方法,delay是apply_anysc的简写。所以delay中传递的参数会比apply_anysc能传的参数少一些。那么延迟执行异步任务的关键点就在于传递的参数中。例子
from datetime import datetime,timedeltaeta = datetime.utcnow() + timedelta(seconds=10)
t2 = test_task.apply_anysc(args=(10,20), eta=eta)
分析:
test_task:表示你要执行异步任务的那个被装饰器装饰的函数
apply_anysc:这个就是执行异步延迟任务必须要调用的方法!!
args : 这个是传递给那个被装饰器装饰的函数参数,如果有参数那么就需要写,没有那就不用写
eta:这个是关键。意思是延迟10秒执行。
本文共计620个文字,预计阅读时间需要3分钟。
描述:`delay()`和`apply_async()`都是执行异步任务的函数,但它们在用法上有所区别。实际上,两者都是执行异步任务的方法,`delay()`是`apply_async()`的简化版。`delay()`传递的参数比`apply_async()`能传递的参数少一些。
区别:`delay()`和`apply_async()`都是执行异步任务的,但`delay()`是`apply_async()`的简化版,传递的参数较少。
描述
首先说下异步任务执行delay()和apply_anysc()两者区别,其实两者都是执行异步任务的方法,delay是apply_anysc的简写。所以delay中传递的参数会比apply_anysc能传的参数少一些。那么延迟执行异步任务的关键点就在于传递的参数中。例子
from datetime import datetime,timedeltaeta = datetime.utcnow() + timedelta(seconds=10)
t2 = test_task.apply_anysc(args=(10,20), eta=eta)
分析:
test_task:表示你要执行异步任务的那个被装饰器装饰的函数
apply_anysc:这个就是执行异步延迟任务必须要调用的方法!!
args : 这个是传递给那个被装饰器装饰的函数参数,如果有参数那么就需要写,没有那就不用写
eta:这个是关键。意思是延迟10秒执行。

