Python中threading模块join函数用法实例分析

 更新时间:2015年06月04日 11:28:29   作者:MaxOmnis  
这篇文章主要介绍了Python中threading模块join函数用法,以实例形式较为详细的分析了join函数的功能与使用方法,需要的朋友可以参考下

本文实例讲述了Python中threading模块join函数用法。分享给大家供大家参考。具体分析如下:

join的作用是众所周知的,阻塞进程直到线程执行完毕。通用的做法是我们启动一批线程,最后join这些线程结束,例如:

for i in range(10):
 t = ThreadTest(i)
 thread_arr.append(t)

for i in range(10):
 thread_arr[i].start()

for i in range(10):
 thread_arr[i].join()

此处join的原理就是依次检验线程池中的线程是否结束,没有结束就阻塞直到线程结束,如果结束则跳转执行下一个线程的join函数。

而py的join函数还有一个特殊的功能就是可以设置超时,如下:

Thread.join([timeout])

Wait until the thread terminates. This blocks the calling thread until the thread whose join() method is called terminates – either normally or through an unhandled exception – or until the optional timeout occurs.
 
也就是通过传给join一个参数来设置超时,也就是超过指定时间join就不在阻塞进程。而在实际应用测试的时候发现并不是所有的线程在超时时间内都结束的,而是顺序执行检验是否在time_out时间内超时,例如,超时时间设置成2s,前面一个线程在没有完成的情况下,后面线程执行join会从上一个线程结束时间起再设置2s的超时。

希望本文所述对大家的Python程序设计有所帮助。

相关文章

  • python中if和elif的区别介绍

    python中if和elif的区别介绍

    这篇文章主要介绍了python中if和elif的区别,下面文章将举多个例子围绕if和eli的相关资料展开内容,需要的朋友可以参考一下,希望对你有所帮助
    2021-11-11
  • python 猴子补丁(monkey patch)

    python 猴子补丁(monkey patch)

    这篇文章主要介绍了python 猴子补丁(monkey patch),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06
  • 基于腾讯云服务器部署微信小程序后台服务(Python+Django)

    基于腾讯云服务器部署微信小程序后台服务(Python+Django)

    这篇文章主要介绍了基于腾讯云服务器部署微信小程序后台服务(Python+Django),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-05-05
  • 基于asyncio 异步协程框架实现收集B站直播弹幕

    基于asyncio 异步协程框架实现收集B站直播弹幕

    本文给大家分享的是基于asyncio 异步协程框架实现收集B站直播弹幕收集系统的简单设计,并附上源码,有需要的小伙伴可以参考下
    2016-09-09
  • 将python安装信息加入注册表的示例

    将python安装信息加入注册表的示例

    今天小编就为大家分享一篇将python安装信息加入注册表的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • tensorflow 只恢复部分模型参数的实例

    tensorflow 只恢复部分模型参数的实例

    今天小编就为大家分享一篇tensorflow 只恢复部分模型参数的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • python 最简单的实现适配器设计模式的示例

    python 最简单的实现适配器设计模式的示例

    这篇文章主要介绍了python 最简单的实现适配器设计模式的示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06
  • python性能测量工具cProfile使用解析

    python性能测量工具cProfile使用解析

    这篇文章主要介绍了python性能测量工具cProfile使用解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • 用Python的Django框架完成视频处理任务的教程

    用Python的Django框架完成视频处理任务的教程

    这篇文章主要介绍了用Python的Django框架完成视频处理任务的教程,包括用户的视频上传和播放以及下载功能的实现,需要的朋友可以参考下
    2015-04-04
  • Python动态声明变量赋值代码实例

    Python动态声明变量赋值代码实例

    这篇文章主要介绍了Python动态声明变量赋值代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12

最新评论