Python多线程threading用法

Python里面经常会用到多线程,即所有的方法在同一时间开始运行,而不是按顺序一个一

 

个运行。所用到的模块为threading,下面详解threading用法。

 

一、我们写三个方法,one、two、three并正常运行。

 

这里只截图了one()方法,two、three与one内容一样。

按下面图中的运行方式,三个函数是分别在不同时间运行的。


二、            我们用threading使三个方法在同一时间运行

 

定义一个线程池并把要运行的线程都写到这个线程池列表里:

threads= [] #定义一个线程池
t1 = threading.Thread(target=one,args=(,)) #建立一个线程并且赋给t1,这个线程指定调用方法one,并且不带参数
threads.append(t1)#t1线程装到threads线程池里
t2 = threading.Thread(target=two)
threads.append(t2)
t3
= threading.Thread(target=three)
threads.append(t3)

这时threads这个列表中就有三个线程装在里面了。

 

下面就是运行这个线程池里面的线程

for t in threads:
    t.setDaemon(True)#声明t为守护线程,设置的话,子线程将和主线程一起运行,并且直接结束,不会再执行循环里面的子线程
    t.start()
t.join()#作用是执行完所有子线程才去执行主线程

用一个for语句遍历threads里的线程,然后调用start()方法运行

注意t.join()必须放在for语句外面。

 

三、            运行结果为在同一时间启动的

 

是不是很快就明白threading的用法了呢?

有问题可以交流QQ群:610845268


  • 10
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值