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

yipeiwu_com7年前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 判断 有向图 是否有环的实例讲解

实例如下: import numpy from numpy import * def dfs( v ): vis[v] = -1 flag = 0 for i in range...

djang常用查询SQL语句的使用代码

djang常用查询SQL语句的使用代码

将django语法和sql对应一下,希望对大家有所帮助 查询单个列的值 story.object.values_list("url", flat=True) SELECT `sto...

编程语言Python的发展史

编程语言Python的发展史

Python是我喜欢的语言,简洁、优美、易用。前两天,我很激昂地向朋友宣传Python的好处。 “好吧,我承认Python不错,但它为什么叫Python呢?” “呃,似乎是一个电视剧的名...

Python实现字符串格式化的方法小结

Python2.6+ 增加了str.format函数,用来代替原有的'%'操作符。它使用比'%'更加直观、灵活。下面详细介绍一下它的使用方法。 下面是使用'%'的例子: "" "P...

Appium+Python自动化测试之运行App程序示例

Appium+Python自动化测试之运行App程序示例

在上一篇博客中,已经将环境搭建好了。现在,我们利用搭建的环境来运行一条测试脚本,脚本中启动一个计算器的应用,并实现加法的运算。 创建模拟器 在运行App之前,首先需要创建一个Androi...