イベントループが既に実行中のasyncio.Server
インスタンスを実行することが可能ですか?run_forever
メソッド(別スレッド、 もちろん)。 私が理解しているように、サーバーは、ループが既に実行されている場合は、loop.run_until_complete(asyncio.start_server(...))
または await asyncio.start_server(...)
のいずれかで開始できます。 ループはすでにrun_foreverメソッドによって実行されているので、最初の方法は私には受け入れられません。しかし、私は "ループ領域"の外側から(つまり、メインメソッドから、非同期としてマークすることはできません)、それを開始しようとしているので、表現を待つことはできません。イベントループが既に実行されている間にasyncio.Serverインスタンスを実行することは可能ですか
ソースの中で、最も簡単な解決策は、テストを開始する前に(ループを実行して)すべてのルータ(サーバ)を追加することです。しかし、私はそれを実装しようとするので、テストがすでに実行されているときにルータを追加することは可能です。私はloop.call_soon
(call_soon_threadsafe
)の方法は私を助けることができると思ったが、それはコルーチンをsheduleできないようだが、単純な機能。
私の説明があまり混乱しないことを願っています。前もって感謝します!
ありがとうございます!それは私が探しているようだ。 –