请求结束后的Appengine Python异步urlfetch

时间:2014-10-24 21:46:40

标签: google-app-engine asynchronous webapp2 urlfetch

如果我使用具有回调的RPC创建urlfetch.make_fetch_call(来自webapp2.RequestHandler),并且不等待RPC,并且Appengine请求完成,那么会发生什么异步通话?它会终止,还是Appengine让它完成?

1 个答案:

答案 0 :(得分:2)

来自docs [1]的这句话是一个提示:

“回调不会在后台发生;应用程序必须调用方法(wait(),check_success()或get_result())来调用回调函数。”

通常,异步调用仍然是请求的本地调用,并且不在App Engine运行时的单独进程中运行(即,它们是“用户”线程而不是“守护程序”线程,如果您要查看它进一步)。一旦您的请求终止(通过DeadlineExceededError或其他方式),任何挂起的异步调用也将终止。

[1] https://cloud.google.com/appengine/docs/python/urlfetch/asynchronousrequests