使用 UVLoop
uvloop 是基於 libuv 的 asyncio.AbstractEventLoop 的實現(由 nodejs 使用)。它符合 99%的 asyncio 功能,比傳統的 asyncio.EventLoop 快得多。uvloop 目前在 Windows 上不可用,請用 pip install uvloop 安裝。
import asyncio
import uvloop
if __name__ == "__main__":
asyncio.set_event_loop(uvloop.new_event_loop())
# Do your stuff here ...
也可以通過將 EventLoopPolicy 設定為 uvloop 中的一個來更改事件迴圈工廠。
import asyncio
import uvloop
if __name__ == "__main__":
asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
loop = asyncio.new_event_loop()