最近我注意到,当我重新安排延迟任务时,该任务会产生两个或多个完全相同的任务。我刚刚有一份工作产生了 4 个相同的任务。我们使用如下代码来重新安排我们的任务:
Queue q = null;
if (queueName == null)
q = QueueFactory.getDefaultQueue();
else
q = QueueFactory.getQueue(queueName);
TaskOptions to = TaskOptions.Builder.withPayload(this);
q.add(to);
这段代码非常简单,但它给我们的应用程序带来了很多问题。我们甚至尝试为任务命名,例如:
to.taskName(TASK_NAME);
以防止重复任务无济于事。有没有其他人看到这个问题或有解决方案来防止重复。