异步的异步模块导入
aioimport的Python项目详细描述
进口
异步的异步模块导入
入门
安装
从PyPI安装,使用:
pip install aioimport
问题
一些顽皮的模块在导入期间有长时间运行的操作
天真的解决方案
首先要想到的是本地的东西:
^{pr2}$它减少了启动程序(或导入库)所需的时间, 但是它仍然阻塞了你的事件循环。在
用法
importaioimportasyncdefmy_work()->None:awaitaioimport.import_module("naughty")# will asynchronously import moduleimportnaughty# will be instantaneous since `naughty` is already in `sys.modules`awaitaioimport.reload(naughty)# and you can asynchronously reload modules too
工作原理
模块导入在asyncio default executor中完成。在
请注意,GIL仍然存在,而且技术上的导入是并行完成的,而不是与代码并行进行的。在
许可证
这个项目是在麻省理工学院许可下授权的-有关详细信息,请参阅LICENSE文件
- 项目
标签: