一直有一些疑問,python的一些函數及常用函式庫是阻塞的嗎?例如print,socket連接等,關於阻塞和非阻塞,非同步等有什麼簡潔的解決方案嗎? 語言方面有對非同步並行支援比較明了的嗎?用過nodejs回調受不了,最新ES似乎有改進。
人生最曼妙的风景,竟是内心的淡定与从容!
用gevent啊,協程方案,用語句from gevent import monkey; monkey.patch_socket()對IO函數打補丁,就可以設定為阻塞
gevent
from gevent import monkey; monkey.patch_socket()
IO
如果是python3的話,還可以用asyncio,一個已經加入標準庫的協程方案
python3
asyncio
協程就是非同步回呼的語法糖,用同步的寫法實現非同步的效果,你值得擁有
用
gevent
啊,協程方案,用語句
from gevent import monkey; monkey.patch_socket()
對IO
函數打補丁,就可以設定為阻塞如果是
python3
的話,還可以用asyncio
,一個已經加入標準庫的協程方案協程就是非同步回呼的語法糖,用同步的寫法實現非同步的效果,你值得擁有