在后台创建线程和为其创建任务有什么区别?
例如,一个线程:
tid = background_thread.start_new_background_thread(f, ["foo", "bar"])
然后有一个任务:
taskqueue.add(url='/worker', params={'key': key})
有什么区别?什么时候用一个代替另一个?使用任务队列比使用 background_thread(似乎更容易设置)有什么优势吗?
最佳答案
最大的区别是任务独立于任何其他代码运行,您可以轻松管理它们的处理速度,它们可以在失败时自动重试,并且您可以为它们设置不同的选项,例如 ETA。
当然,您可以自己完成所有这些,但是您必须编写和测试大量代码。
关于python - Google App Engine 后台线程与任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28530845/