使每个python函数异步/等待

aioif的Python项目详细描述


aioify

使每个函数异步并可等待。

用法

pip install aioify

例如,使osshutil和用户定义的函数可等待。

#!/usr/bin/env python############ Warning ############# This code should be executed only on POSIX OS with at least 1 GiB free space in /tmp/ directory and RAM!fromaioifyimportaioifyimportosimportshutildefgenerate_big_file(filename,file_size):withopen(file=filename,mode='wb')asf:f.write(os.urandom(file_size))aiogenerate_big_file=aioify(obj=generate_big_file)aios=aioify(obj=os,name='aios')aioshutil=aioify(obj=shutil,name='aishutil')asyncdefmain():dir_path='/tmp/big-files/'awaitaios.makedirs(name=dir_path,exist_ok=True)filename=os.path.join(dir_path,'original')copy_filename=os.path.join(dir_path,'copy')file_size=1024*1024*1024awaitaiogenerate_big_file(filename=filename,file_size=file_size)awaitaioshutil.copy(src=filename,dst=copy_filename)awaitaioshutil.rmtree(path=dir_path)if__name__=='__main__':importasyncioasaioloop=aio.get_event_loop()loop.run_until_complete(main())

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java使Eclipse在其控制台中显示最顶层的异常,而不是完整的堆栈跟踪   java如何为一个组件提供多个DropTargetListener?   在Eclipse包资源管理器中,有些文件不可见?   java在Spring Boot中使用@Bean配置设置类属性的默认值   在JTextPane中使用#链接的Java HTML?   java当应用程序打开时,如何将通知内容发送给活动?   java Android ROOM如何编写包含多个实体的查询,这是在哪里完成的?   Play Framework的java登录/注销问题?   java如何从安卓 Cordova/Phonegap调用javascript函数   JavaFX8如何在Java8中显示上次修改的LocalDateTime?   javabean验证中的多个约束注释   java使用JSTL设置请求属性   java在Android启动的服务中调用函数   用于检查xml是否包含键和值的java XPath表达式   在java游戏中使用斜坡因子挥杆   Java文件:尝试使用FileWriter将结果附加到已经存在的文件中   bootclasspath Java Xbootclasspath,相对路径   java我如何让这个“怪物战斗模拟器”工作?   swing使用动作侦听器隐藏和显示java桌面应用程序