看板 Python 關於我們 聯絡資訊
如果程式中出現threading(非Asyncio.run_in_executor)與Async混用 我一定會先思考人生,是不是把Python變難了,是不是能從流程改善 讓被歧視的膠水語言保有最後一點的優雅 > https://paste.ee/p/kgAsv 在同一個process中任意執行 asyncio.run 並不一定是同一個eventLoop (不同thread又分別建立了Loop) 在整個process中 asyncio.run 基本上只應該存在一個 你可以嘗試把asyncio.run的部分都改用 loop = get_event_loop() 查看loop的id. 或從Debugger查看 --- 我嘗試在你最後的code中修改,在同一個process存在2個loop 又希望不同的loop之間可以通知,感覺上就不太正確。 :https://gist.github.com/takidog/c53f73e24295d66c76b5e330940bcf73 可以把loop, condition當作arg傳入,或是當作global (我認為都非常的糟糕) > 因為有某些部份是引用別人寫的 lib, 我不想去全面改寫 :run_in_executor 我的理解可能也有錯誤,歡迎討論 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.164.90.36 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1675634904.A.C15.html ※ 編輯: TakiDog (1.164.90.36 臺灣), 02/06/2023 06:08:53 ※ 編輯: TakiDog (1.164.90.36 臺灣), 02/06/2023 06:11:38