Python线程中对join方法的运用的教程

yipeiwu_com5年前Python基础

join 方法:阻塞线程 , 直到该线程执行完毕

因此  ,可以对join加一个超时操作 , join([timeout]),超过设置时间,就不再阻塞线程

jion加上还有一个后果就是, 子线程和主线程绑定在一起 , 直到子线程运行完毕,才开始执行子线程。


代码 有join:

在CODE上查看代码片派生到我的代码片

  #-*- coding: UTF-8 -*-  
   
   
  import threading 
  from time import sleep 
   
  def fun(): 

在CODE上查看代码片派生到我的代码片

  <span style="white-space:pre">  </span>i= 5 
    while i > 0: 
      print(111111) 
      sleep(10) 

在CODE上查看代码片派生到我的代码片

  <span style="white-space:pre">    </span>i-- 
   
  if __name__ == '__main__': 
   
   
    a = threading.Thread(target = fun) 
    a.start() 
    a.join() 
    while True: 
      print('aaaaaaa') 
      sleep(1) 

在CODE上查看代码片派生到我的代码片

    输出:<pre name="code" class="python">111111 输完之后, 才输出 <span style="font-family: Arial, Helvetica, sans-serif;">aaaaaaa </span> 

在CODE上查看代码片派生到我的代码片

     

代码: 无join

在CODE上查看代码片派生到我的代码片

  #-*- coding: UTF-8 -*-  
   
   
  import threading 
  from time import sleep 
   
  def fun(): 
    while True: 
      print(111111) 
      sleep(10) 
   
  if __name__ == '__main__': 
   
   
    a = threading.Thread(target = fun) 
    a.start() 
    while True: 
      print('aaaaaaa') 
      sleep(1) 

在CODE上查看代码片派生到我的代码片

    <pre name="code" class="python" style="font-size:18px;">111111 和 <span style="font-family: Arial, Helvetica, sans-serif;">aaaaaaa  间隔输出</span> 

相关文章

python中列表的切片与修改知识点总结

python中列表的切片与修改知识点总结

python中可以使用下标索引来访问列表中的值,对列表进行切片即截取,也可以对列表的数据项进行修改或更新。 使用下标索引来访问列表中的值,例如list1[1]。 使用索引截取列表中的值...

对pytorch网络层结构的数组化详解

最近再写openpose,它的网络结构是多阶段的网络,所以写网络的时候很想用列表的方式,但是直接使用列表不能将网络中相应的部分放入到cuda中去。 其实这个问题很简单的,使用module...

Python数据分析:手把手教你用Pandas生成可视化图表的教程

Python数据分析:手把手教你用Pandas生成可视化图表的教程

大家都知道,Matplotlib 是众多 Python 可视化包的鼻祖,也是Python最常用的标准可视化库,其功能非常强大,同时也非常复杂,想要搞明白并非易事。但自从Python进入3...

Django单元测试工具test client使用详解

The test client test client是一个python类,来模拟一个简单的“哑”浏览器,允许你来测试你的view函数.你可以使用test client完成下列事情: 1...

python中dict使用方法详解

dict的特性 dict是python中的一个可变的数据类型,用{}表示,dict的key必须是不可变的数据类型,而value的数据类型可以任意。 格式:{key:value,key...