文章详情页
python 加快程序运行问题
浏览:14日期:2022-07-26 13:50:42
问题描述
假设:
def get(url): #这里是get请求 return urlfor i in urls: get(i)#这里采用循环去调用请求#这样速度好像比较慢,有什么方法可以#当多个请求时,也可以快速完成程序
谢谢了
问题解答
回答1:>>> from eventor import Eventor>>> urllist = ['https://a.com', ....]>>> def get(url):# 网络IO耗时return url>>> e = Eventor(threadcount=3, taskunitcount=3, func=get, interval=1)>>> result = e.run_with_tasklist(urllist)>>> print(result)
自己根据需求选择 多核多进程,还是多线程,协程加快处理。
详情移步:https://github.com/kute/eventor
后续再 加进 async await,celery worker等
回答2:几个方法,并且可以结合使用
coroutine
multiprocess
multithread
celery worker
回答3:最简单的改造就是用multiprocessing.dummy 执行多线程任务,可以查一下,设置好线程数量,然后对程序不需要太大改造,大体就能用。
相关文章:
1. dockerfile - 我用docker build的时候出现下边问题 麻烦帮我看一下2. css - width设置为100%之后列表无法居中3. c++ - win764位环境下,我用GCC为什么指针占8个字节,而long是4个字节?4. docker-compose中volumes的问题5. 关于匿名函数的问题6. python - 用urllib抓取网页上的下载链接,目标文件是xls形式,但发现抓下来的xls是空表,里面只有一句报错信息,求帮助。7. css3 - transition transform初始display:block怎么就没移动效果?8. javascript - 在静态页面上用load 引入的页面文件问题?9. vue.js - vuejs 折叠面板的展开收缩动画应该怎么实现?用vue自带的过渡效果还是css3?10. 微信chooseImage接口部分机型选择图片后莫名其妙的跳转其他页面
排行榜