#使用单线程串行的方式
# import time
#
# def get_page(str):
# print('正式下载:'+str)
# time.sleep(2)
# print('下载成功:' + str)
#
# name_list=['a1','b2','c3','d4']
#
# start_time =time.time()
#
# print('开始时间:'+str(start_time))
#
# for i in range(len(name_list)):
# get_page(name_list[i])
#
#
# end_time = time.time()
#
# print('用了 %d 秒'%(end_time-start_time))
#################################################################################
import time
#导入线程池模块对应的类
from multiprocessing.dummy import Pool
start_time =time.time()
def get_page(str):
print('正式下载:'+str)
time.sleep(2)
print('下载成功:' + str)
name_list=['a1','b2','c3','d4']
#实例化一个线程池对象
pool = Pool(4)
#将列表中每一个列表元素传递给get_page进行处理
pool.map(get_page,name_list)
end_time = time.time()
print('用了 %d 秒'%(end_time-start_time))
以上来自某个视频的一个例子
本文对比了单线程串行下载与使用Python线程池并行下载网页的方法,展示了如何通过并行处理加快任务执行速度。
503

被折叠的 条评论
为什么被折叠?



