使用 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()