From: http://doudouclever.blog.163.com/blog/static/17511231020127232303469/

python中得thread的一些机制和C/C++不同:在C/C++中,主线程结束后,其子线程会默认被主线程kill掉。而在python中,主线程结束后,会默认等待子线程结束后,主线程才退出。

python对于thread的管理中有两个函数:join和setDaemon

  • join:如在一个线程B中调用threada.join(),则threada结束后,线程B才会接着threada.join()往后运行。
  • setDaemon:主线程A启动了子线程B,调用b.setDaemaon(True),则主线程结束时,会把子线程B也杀死,与C/C++中得默认效果是一样的。

在这里给出一个例子:

#! /usr/bin/env python

 import threading import time

 class myThread(threading.Thread):   def __init__(self, threadname):     threading.Thread.__init__(self, name=threadname)     self.st = 2 

   def run(self):     time.sleep(self.st)     print self.getName()   def setSt(self, t):      self.st = t 

 def fun1():   t1.start()   print "fun1 done"

 def fun2():   t2.start()   print "fun2 done"

 t1=myThread("t1") t2=myThread("t2") t2.setSt(10); # t2.setDaemon(True) fun1() fun2() print "now u will see me"

python中thread的setDaemon、join的用法相关推荐

  1. python items函数用法,Python中dictionary items()系列函数的用法实例

    本文实例讲述了Python中dictionary items()系列函数的用法,对Python程序设计有很好的参考借鉴价值.具体分析如下: 先来看一个示例: import html # availab ...

  2. Python中yield和yield from的用法

    yield 后面接的是 future 对象 调用方 委托生成器 yield from 直接给出循环后的结果 yield from 委托者和子生成器直接通信 yield from 直接处理stopIte ...

  3. python中list[1啥意思_详解Python中list[::-1]的几种用法

    本文主要介绍了Python中list[::-1]的几种用法,分享给大家,具体如下: s = "abcde" list的[]中有三个参数,用冒号分割 list[param1:para ...

  4. python enumerate函数_关于python中enumerate和zip函数的用法及举例

    关于python中enumerate和zip函数的用法及举例 关于enumerate函数: enumerate函数可以同时返回列表或元组等可迭代对象的下标和内容,但实际上,enumerate函数实际返 ...

  5. python中关于try,expect的用法

    python中关于try,expect的用法 try: code except Error1 as e: #处理Error1异常 print(e) 上式说明,运行code,如果code恰巧出现了Err ...

  6. python中all()和any()函数的用法

    python中all()和any()函数的用法 若判断两个数组相等,all()函数表示的是数组中所有数都要相等才输出TRUE,any()函数则是只要有一个数相等则就输出TRUE.如下代码所示: imp ...

  7. 一文搞定python中的multiply()和dot以及用法

    python中的multiply()和dot以及*用法.md 首先创建如下的数组和矩阵,其中a,b为数组,A,B为矩阵 import numpy as npa = np.arange(1,5).res ...

  8. python中的or的两种用法

    python中的or的两种用法 python中or除了常见的和and作为判断的条件外,还有一种不多见但很实用的用法,那就是: a = b or c 在这条赋值语句中的 or 的含义是判断 b 和 c ...

  9. python 中 关于reverse() 和 reversed()的用法介绍

    转载 csdn* 2018-11-06 13:30:36  32837  收藏 44 展开 reverse(): 是python中列表的一个内置方法(也就是说,在字典,字符串或者元组中,是没有这个内置 ...

最新文章

  1. python脚本:判断字符是否为中文
  2. 一)golang的单例模式
  3. Delphi单元文件引用名称问题
  4. VC 中一些控件的使用方法(TabControl, 工具栏)
  5. 服务器显示器超频,电脑显示器超频怎么恢复正常 电脑显示器超频是什么原因...
  6. 哼唱搜索软件测试,不知道歌名只哼唱也能识别歌名的音乐APP到底谁更好
  7. 神经网络,英文字母识别
  8. ubuntu(linux) 命令行设置wifi账户密码 python脚本设置wifi
  9. Pytorch不同层设置不同学习率
  10. 评说于国富律师的“免费正版化”
  11. ActiveX控件属性的下拉列表
  12. 计算机怎么格式化硬盘,电脑怎么格式化硬盘
  13. 升级了鸿蒙资料还在吗,手机升级更新鸿蒙系统会清空数据吗?华为鸿蒙升级需要备份吗...
  14. linux 安装bz2文件,linux下.bz2文件的安装
  15. 亲测可用|亚信防毒墙网络版卸载图文教程
  16. Cocos Creator开发制作的小游戏《5人足球》
  17. 漫画网站服务器,漫画网站服务器配置
  18. 网络安全市场分析(战略类)
  19. Terrain方案比较
  20. 优酷+酷6+土豆视频下载地址API

热门文章

  1. 自已脚本开发常用的底层方法
  2. 提高 Web 站点性能的最佳实践
  3. 关于绑定了GridView控件后怎么截取字符串和CSS样式来控制表头不换行
  4. 软硬兼备 学做CIO
  5. leetcode 65. 有效数字(正则表达式)
  6. leetcode 1720. 解码异或后的数组(位运算)
  7. leetcode 503. 下一个更大元素 II(单调栈)
  8. ruby nil_Ruby中的数据类型-True,False和Nil用示例解释
  9. mysql 时间推移_随着时间的推移可视化COVID-19新案例
  10. 【GoWeb开发实战】Cookie