1.多线程和单线程简单比较

时间:2022-12-02 17:38:12
import time,random,threading

def download(fileName):
    print('开始下载%s文件'%fileName)
    time.sleep(random.random()*10)
    print('%s文件下载完成'%fileName)

# 单线程(默认主线程)
# if __name__== "__main__":
#     for i in range(5):
#         download(i)

#为了提高效率,我们可以使用多线程来下载文件:
#多线程--threading
#多任务可以由多线程完成,也可以由多进程来完成!
#thread模块--已经被废弃了
#threading模块代替了thread,所以在python3当中不能再使用thread模块
#为了兼容性,python3将thread重命名为"_thread"
#python的标准库提供了两个模块,_thread(低级模块)和threading(高级模块)
#由于threading已经对_thread进行了封装,所以我们在编程时主要使用threading

#使用
#启动一个线程就是把函数传入并创建一个Thread实例,然后调用start()方法
#多线程__main__

#主线程
if __name__ == "__main__":
    for i in range(5):
        #创建线程
        t = threading.Thread(target=download,args=(i,))
        #启动子线程
        t.start()