文章詳情頁
異步 - python一些內置的函數是阻塞還是非阻塞?
瀏覽:145日期:2022-06-26 17:57:10
問題描述
一直有一些疑問,python的一些函數及常用庫是阻塞的嗎?例如print,socket連接等,關于阻塞和非阻塞,異步等有什么簡潔的解決方案嗎?語言方面有對異步并行支持比較明了的嗎?用過nodejs回調受不了,最新ES貌似有改進。
問題解答
回答1:用gevent啊,協程方案,通過語句from gevent import monkey; monkey.patch_socket()對IO函數打補丁,就可以設置為阻塞
如果是python3的話,還可以用asyncio,一個已經加入標準庫的協程方案
協程就是異步回調的語法糖,用同步的寫法實現異步的效果,你值得擁有
相關文章:
1. mysql - 在不允許改動數據表的情況下,如何優化以varchar格式存儲的時間的比較?2. MySQL中無法修改字段名的疑問3. css - 網頁div區塊 像蘋果一樣可左右滑動 手機與電腦4. docker網絡端口映射,沒有方便點的操作方法么?5. javascript - Img.complete和img.onload判斷圖片加載完成有什么區別?6. java中返回一個對象,和輸出對像的值,意義在哪兒7. css3 - 純css實現點擊特效8. Python中使用超長的List導致內存占用過大9. javascript - 有適合開發手機端Html5網頁小游戲的前端框架嗎?10. javascript - 關于apply()與call()的問題
排行榜
