Re: [問題] 請問 Coroutine & 一般 callback 合作的問題
如果程式中出現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
討論串 (同標題文章)
Python 近期熱門文章
PTT數位生活區 即時熱門文章