Python:使用threading模块实现多线程编程三[threading.Thread类的重要函数]
这篇文章主要介绍threading模块中的主类Thread的一些主要方法,实例代码如下:
Python代码
- '''''
- Created on 2012-9-7
- @author: walfred
- @module: thread.ThreadTest3
- @description:
- '''
- import threading
- class MyThread(threading.Thread):
- def __init__(self):
- threading.Thread.__init__(self)
- def run(self):
- print "I am %s" % (self.name)
- if __name__ == "__main__":
- for i in range(0, 5):
- my_thread = MyThread()
- my_thread.start()
1 name相关
你可以为每一个thread指定name,默认的是Thread-No形式的,如上述实例代码打印出的一样:
I am Thread-1
I am Thread-2
I am Thread-3
I am Thread-4
I am Thread-5
当然你可以指定每一个thread的name,这个通过setName方法,代码:
Python代码
- def __init__(self):
- threading.Thread.__init__(self)
- self.setName("new" + self.name)
2 join方法
join方法原型如下,这个方法是用来阻塞当前上下文,直至该线程运行结束:
Python代码
- def join(self, timeout=None):
timeout可以设置超时蚕食
3 setDaemon方法
当我们在程序运行中,执行一个主线程,如果主线程又创建一个子线程,主线程和子线程就分兵两路,当主线程完成想退出时,会检验子线程是否完成。如果子线程未完成,则主线程会等待子线程完成后再退出。但是有时候我们需要的是,只要主线程完成了,不管子线程是否完成,都要和主线程一起退出,这时就可以用setDaemon方法,并设置其参数为True。
转载于:https://blog.51cto.com/allanx/1148362
Python:使用threading模块实现多线程编程三[threading.Thread类的重要函数]相关推荐
- c#.net多线程编程教学(2):Thread类
这章将向大家介绍.NET中的线程API,怎么样用C#创建线程,启动和停止线程,设置优先级和状态. 在.NET中编写的程序将被自动的分配一个线程.让我们来看看用C#编程语言创建线程并且继续学习线程的知识 ...
- python使用threading模块实现多线程
综述 Python这门解释性语言也有专门的线程模型,Python虚拟机使用GIL(Global Interpreter Lock,全局解释器锁)来互斥线程对共享资源的访问,但暂时无法利用多处理器的优势 ...
- Python:使用threading模块实现多线程(转)
2019独角兽企业重金招聘Python工程师标准>>> Python:使用threading模块实现多线程(转) 分类: python 标签: thread 评论: 暂无评 ...
- 使用threading模块实现多线程
2019独角兽企业重金招聘Python工程师标准>>> 综述 Python这门解释性语言也有专门的线程模型,Python虚拟机使用GIL(Global Interpreter Loc ...
- python创建线程函数_Python多线程编程(三):threading.Thread类的重要函数和方法...
这篇文章主要介绍threading模块中的主类Thread的一些主要方法,实例代码如下: 复制代码 代码如下: ''' Created on 2012-9-7 @author: walfred @m ...
- 转载 Net多线程编程—System.Threading.Tasks.Parallel
.Net多线程编程-System.Threading.Tasks.Parallel System.Threading.Tasks.Parallel类提供了Parallel.Invoke,Paralle ...
- C#多线程编程介绍——使用thread、threadpool、timer
C#多线程编程介绍--使用thread.threadpool.timer 在system.threading 命名空间提供一些使得能进行多线程编程的类和接口,其中线程的创建有以下三种方法:thread ...
- Python 批量创建线程及threading.Thread类的常用函数及方法
在<[Python]线程的创建.执行.互斥.同步.销毁>(点击打开链接)中介绍了Python中线程的使用,但是里面线程的创建,使用了很原始的方式,一行代码创建一条.其实,Python里是可 ...
- 多线程编程:return、pthread_exit()、exit()函数区别
多线程编程:return.pthread_exit().exit()函数区别: return: 返回到调用者那里去 pthread_exit(): 将调用该函数的 ...
最新文章
- android Style(样式)的解析
- Eclipse插件安装
- 计算机的桌面图标类型,给“我的电脑”翻身 另类桌面图标排列
- win2003服务器的一些安全设置
- UISwitch 添加 标签
- w2008 R2 401 - 未授权: 由于凭据无效,访问被拒绝。
- 基于CNN目标检测方法(RCNN,Fast-RCNN,Faster-RCNN,Mask-RCNN,YOLO,SSD)行人检测
- 后缀树(Suffix tree)
- 彻底禁用UAC,解决“Windows 8/10 Administrator须以管理员身份运行才有权限”的问题
- reCAPTCHA打不开的解决方法
- 4大主流CPU处理器技术架构详解
- 如何查看ps图片中边框的背景颜色
- Excel数据分析从入门到精通(三)函数进阶-52个Excel函数之清洗类函数
- ZOJ 3797 Sister's Noise 组合+DP
- 周庄王,姬佗(公元前696年—公元前682年在位)
- 不是所有码农都有货之Java 实例 - 数组并集
- GPS车辆定位,汽车实时在线防止公车私用!
- cpu、内存、硬盘的关系
- python 验证码识别 阿里云_python实现验证码识别功能
- 个人笔记——图灵机实现函数f(x,y)=ax2+by
热门文章
- C++_类和对象_C++多态_多态的基本语法_静态多态_动态多态_虚函数---C++语言工作笔记069
- Sharding-JDBC(操作公共表)_Sharding-Sphere,Sharding-JDBC分布式_分库分表工作笔记013
- Vue基本使用---vue工作笔记0002
- Netty工作笔记0067---Netty编解码机制简述
- 杭电1862EXCEL排序
- boost学习之BOOST_PP_SEQ_FOR_EACH_R
- 机器学习与计算机视觉(keras和mnist)
- 随想录(elf文件)
- 字符串转换成整数 php,php如何将字符串转为整数
- mysql hash切分_轻松优化MySQL-之数据库切分1