私は2つのオブジェクトを持っていて、それらをループで読みたいと思っています。私はこのようなasyncio.wait
を使用しています:asyncio.wait()で行ったコルーチンを知る方法
done, pending = await asyncio.wait(
[reader.read(1000), freader.read(1000)],
return_when=asyncio.FIRST_COMPLETED)
今done.pop()
は私に最初に終了した未来を与えます。問題は私がどのようにread()
操作が完了したかを知ることができないことです。私はtasks
変数に[reader.read(1000), freader.read(1000)]
を入れて、それらと未来を比較してみました。しかし、これは、未来が元のタスクのどれとも等しくないため、間違っているようです。だからどのコルーチンが完成したのか、私はどのようにして見つけ出すのですか?
あなたの呼び出しからタスクを作成し、それらの*を 'wait'に渡す必要があります。 [この例](https://websockets.readthedocs.org/en/stable/intro.html#both) – jonrsharpe
@jonrsharpe。そうです。ありがとう。それを回答として投稿するように気をつけますか? – Elektito
うれしい、やってよ。 – jonrsharpe