これを行うのは安全ですか?
@ndb.tasklet
def foo():
# Note that I do not yield right here
future = some_key.get_async()
# Perform some other code
if some_condition:
# I need the get_async result here
entity = yield future
# I also need the get_async result here.
# If some_condition was true, I would be yielding this future
# for the second time. Is this ok?
entity = yield future
yield
関数の先頭だけでentity
、残りのコードで使用できるとは言わないでください。私の実際の機能はこれよりも少し複雑で、使用する必要がある可能性のある条件付きコードパスがいくつかあり、エンティティがバックグラウンドでフェッチされている間に他のコードを実行できるようにしentity
たいと考えています。yield