1. 引入第三方模块
1.1 import threading
import time
2. 实现timeit方法(函数运行时间)
2.1 def timeit(f):
def wrapper(*args, **kwargs):
start_time = time.time()
res = f(*args, **kwargs)
end_time = time.time()
print("%s函数运行时间为:%.2f" %(f.__name__, end_time - start_time))
return res
return wrapper
3. 模拟网上下载文件
3.1 def download_music(name):
time.sleep(2)
print("download music:%s......"%(name))
def download_movie(name):
time.sleep(2)
print("download movie:%s......"%(name))
4. 多线程实现下载
@timeit //监测多线程下载所用时间
def main():
t1 = threading.Thread(target=download_music, args=("哈哈哈",)) //args传递的是元组
t2 = threading.Thread(target=download_movie, args=("略略略",))
t1.start()
t2.start()
t1.join()
t2.join()
print("下载完成!")
main()
本文介绍了一种使用Python的threading模块实现多线程下载的方法,通过定义timeit装饰器来测量函数执行时间,展示了如何并行下载音乐和电影文件,有效提高了下载效率。
&spm=1001.2101.3001.5002&articleId=86558000&d=1&t=3&u=fa2da68a2b5c4b989b92c1f586e301a0)
1662

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



