【问题标题】:Can an app engine taskqueue task be rescheduled?可以重新安排应用引擎任务队列任务吗?
【发布时间】:2014-04-11 10:39:36
【问题描述】:

在 API 调用期间,我安排一个任务在 n 分钟后执行。我为任务命名。

如果执行另一个 API 调用,将删除该任务。

当任务执行时(所有数据存储操作都在一个事务中执行),它还会检查是否需要再等待一段时间。如果是这样,我想成功完成任务,同时也提交一个同名任务(n分钟后执行),这样仍然可以通过前面提到的API调用取消。

我在文档中没有看到任何关于在成功完成之前添加同名新任务的任务,或者关于任务删除自身并提交同名新任务(尤其是在事务中)的任何内容。

(即使我让它工作了,我也想确保它是由于支持的功能。系统会处理真实的付款。)

感谢您的意见。 /亚历山大

【问题讨论】:

    标签: google-app-engine task-queue


    【解决方案1】:

    据我所知,您在很长一段时间内都无法重复使用任务名称。

    目前没有为任务定义墓碑时间,

    For how long are task names tombstoned in AppEngine?

    另请参阅 What is TombstonedTaskError from App Engine's Task Queue?,这表明名称最多保留 7 天。

    我认为您需要为您尝试做的任何事情或详细说明您的用例找到一种替代方法,也许有更好/替代方法。

    【讨论】:

      【解决方案2】:

      当我测试使用命名任务时,我不能在短时间内创建一个同名的新任务,也不能在几分钟内......,我认为你可以使用存储在一个数据存储实体,cron 每隔一段时间检查数据存储中的状态变量,并在需要时启动任何任务。

      【讨论】:

        猜你喜欢
        • 2012-11-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-06-17
        相关资源
        最近更新 更多