Python线程中的join方法

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


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


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



代码 有join:


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


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


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


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


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

CODEGO.NET代码:

 <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> 


在CODEGO.NET上查看代码片派生到我的代码片


     


代码: 无join


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


?12345678910111213141516171819 #-*- 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>  



郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。