我是否必须在TaskQueue的addAsync()返回的未来调用get()?

时间:2013-05-02 18:11:20

标签: google-app-engine

我正在使用1.7.6中发布的Java App Engine的实验性功能来执行异步任务队列操作。

此处的文档位于:https://developers.google.com/appengine/docs/java/taskqueue/overview#asynchronous-operations

我的问题是,在执行TaskQueue.addAsync()时,是否必须在返回的未来调用get(),或者几乎可以保证addAsync()会像add()一样将任务添加到队列中?

例如,如果传入的HTTP请求执行一个或多个任务的addAsync()并且请求完成且我从不调用get(),会发生什么?有关这方面的任何信息都会有所帮助。

由于

1 个答案:

答案 0 :(得分:2)

documentation表示您确实应该致电get()

  

在事务中异步添加任务时,应在提交事务之前调用Future上的get()以确保请求已完成。

如果您不在交易中执行此操作,是否也应该这样做尚不清楚,但无论如何这可能都是个好主意。