Asinoyx是一个可以简化多处理实现的包
acinonyx的Python项目详细描述
腺苷酸
Asinoyx是一个可以简化您的多处理实现的包,您也可以 可以轻松观察多进程执行的进度。在
使用
一个简单的例子:
importtimefromrandomimportrandomfromacinonyximportrundeflog(val):time.sleep(random())returnvalvalues=range(100)print(run(log,values))
它将与cpu_count
进程一起运行并打印进度条,输出如下:
也可以使用多个参数:
importtimefromrandomimportrandomfromacinonyximportrundefadd(a,b):time.sleep(random())returna+bif__name__=='__main__':values=[(i,i)foriinrange(100)]print(run(add,values))
您也可以在其他场景中使用它,如网络蜘蛛:
importrequestsfromrandomimportrandomimporttimefromacinonyximportirundeffetch():delay=random()url='https://httpbin.org/uuid'time.sleep(delay)returnrequests.get(url).json().get('uuid')if__name__=='__main__':forresultinirun(fetch,range(10),ordered=False):print(result)
故障排除
NSPlaceholderDate初始化错误
objc[67206]: +[__NSPlaceholderDate initialize] may have been in progress in another thread when fork() was called
尝试在执行脚本之前设置env:
exportOBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
- 项目
标签: