当前位置: 首页 > 图灵资讯 > 行业资讯> python多线程的执行分析

python多线程的执行分析

来源:图灵python
时间: 2024-07-07 19:41:18

执行说明

1、多线程执行是GIL锁的存在,实际执行是单线程。

2、一次只执行一个线程,切换其他线程,其中切换时间很短,看起来像多线程执行。

实例

继承Thread类创建自定义线程类,然后创建线程对象并启动线程。

fromrandomimportrandint
fromthreadingimportThread
fromtimeimporttime,sleep

classDownloadTask(Thread):
def__init__(self,filename):
super().__init__()
self._filename=filename

defrun(self):
print('开始下载%s...'%self._filename)
time_to_download=randint(5,10)
sleep(time_to_download)
print('%s下载完成!耗费%d秒'%(self._filename,time_to_download))

defmain():
start=time()
t1=DownloadTask('python入门')
t2=DownloadTask('av.avi')
t1.start()
t2.start()
t1.join()
t2.join()
end=time()
print('共耗费了%.2f秒'%(end-start))

if__name__='__main__':
main()

以上是python多线程的执行分析,希望对大家有所帮助。更多Python学习指导:基础教程python基础教程

本文教程操作环境:windows7系统Python 3.9.1,DELL G3电脑。