Google App Engine文档指出:“为方便起见,您可以使用@ ndb.toplevel装饰请求处理程序。”

可以将@ ndb.toplevel与不需要的python方法一起使用
处理程序?

我有一个python方法mymethod(),它调用ndb.put_multi_async(),而mymethod()在单元测试中被调用。我想在继续操作之前先调用mymethod()以完成put_multi_async()。为了获得这种效果,我可以用@ ndb.toplevel装饰mymethod()吗?这样做似乎可以确保put_multi_async()在mymethod()返回之前完成,但是我想仔细检查一下是否没有任何意外的副作用。

最佳答案

是的,必须研究来自tasklets的整个toplevel模块source,以确认(据我所知,除了模块自己的文档字符串中,没有其他地方记录过该文件),但是我这样做了可以看到使用toplevel装饰不是处理程序的方法不会产生副作用。

关于python - python方法的ndb.toplevel与请求处理程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32236779/

10-13 03:30