扫码关注官方订阅号
假设:
def get(url): #这里是get请求 return url for i in urls: get(i) #这里采用循环去调用请求 #这样速度好像比较慢,有什么方法可以 #当多个请求时,也可以快速完成程序
谢谢了
学习是最好的投资!
>>> 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等
几个方法,并且可以结合使用
coroutine
multiprocess
multithread
celery worker
最简单的改造就是用multiprocessing.dummy 执行多线程任务,可以查一下,设置好线程数量,然后对程序不需要太大改造,大体就能用。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
自己根据需求选择 多核多进程,还是多线程,协程加快处理。
详情移步:https://github.com/kute/eventor
后续再 加进 async await,celery worker等
几个方法,并且可以结合使用
coroutine
multiprocess
multithread
celery worker
最简单的改造就是用multiprocessing.dummy 执行多线程任务,可以查一下,设置好线程数量,然后对程序不需要太大改造,大体就能用。