是否可以在GAE上设置精确或至少近似的计划任务执行时间,该任务将以指定的速率(5 / s,100 / h)执行?
答案 0 :(得分:6)
如果您希望在特定时间定期发生某些事情,那么您应该使用cron。创建一个处理程序,它将生成任务并让cron在某个时间触发它。
如果你需要以编程方式执行此操作(即,使用cron不够常规),那么在创建任务队列任务时,可以在任务队列中设置countdown
以延迟任务运行。
[倒计时]此任务应执行的未来秒数,从插入时间开始计算。目前默认为零。
请参阅Task
所以说你想在今天下午5点执行你的任务,你可以计算你希望你的任务在几秒钟内执行的粗略时间,然后将任务添加到队列中:
seconds_til_start = (datetime(2011,3,22,17,00) - datetime.now()).seconds
taskqueue.add(url='/yourtask', countdown=seconds_til_start)