Python多线程编程简单介绍


Posted in Python onApril 13, 2015

创建线程

格式如下

threading.Thread(group=None, target=None, name=None, args=(), kwargs={})

这个构造器必须用关键字传参调用
- group 线程组
- target 执行方法
- name 线程名字
- args target执行的元组参数
- kwargs target执行的字典参数

Thread对象函数

函数 描述
start() 开始线程的执行
run() 定义线程的功能的函数(一般会被子类重写)
join(timeout=None) 程序挂起,直到线程结束;如果给了 timeout,则最多阻塞 timeout 秒
getName() 返回线程的名字
setName(name) 设置线程的名字
isAlive() 布尔标志,表示这个线程是否还在运行中
isDaemon() 返回线程的 daemon 标志
setDaemon(daemonic) 把线程的 daemon 标志设为 daemonic(一定要在调用 start()函数前调用)

常用示例

格式

import threading
def run(*arg, **karg):

    pass

thread = threading.Thread(target = run, name = "default", args = (), kwargs = {})

thread.start()

实例
#!/usr/bin/python

#coding=utf-8
import threading

from time import ctime,sleep
def sing(*arg):

    print "sing start: ", arg

    sleep(1)

    print "sing stop"


def dance(*arg):

    print "dance start: ", arg

    sleep(1)

    print "dance stop"
threads = []
#创建线程对象

t1 = threading.Thread(target = sing, name = 'singThread', args = ('raise me up',))

threads.append(t1)
t2 = threading.Thread(target = dance, name = 'danceThread', args = ('Rup',))

threads.append(t2)
#开始线程

t1.start()

t2.start()
#等待线程结束

for t in threads:

    t.join()
print "game over"

输出
sing start:  ('raise me up',)

dance start:  ('Rup',)

sing stop

dance stop

game over
Python 相关文章推荐
用Python实现换行符转换的脚本的教程
Apr 16 Python
在Python中测试访问同一数据的竞争条件的方法
Apr 23 Python
Python标准库defaultdict模块使用示例
Apr 28 Python
Python实现的十进制小数与二进制小数相互转换功能
Oct 12 Python
Python lxml解析HTML并用xpath获取元素的方法
Jan 02 Python
在Pycharm中执行scrapy命令的方法
Jan 16 Python
Python supervisor强大的进程管理工具的使用
Apr 24 Python
使用IDLE的Python shell窗口实例详解
Nov 19 Python
python matplotlib画盒图、子图解决坐标轴标签重叠的问题
Jan 19 Python
Python warning警告出现的原因及忽略方法
Jan 31 Python
python mysql自增字段AUTO_INCREMENT值的修改方式
May 18 Python
python Socket网络编程实现C/S模式和P2P
Jun 22 Python
Python中的面向对象编程详解(下)
Apr 13 #Python
简单介绍利用TK在Python下进行GUI编程的教程
Apr 13 #Python
Python中的面向对象编程详解(上)
Apr 13 #Python
进一步理解Python中的函数编程
Apr 13 #Python
Python中的异常处理简明介绍
Apr 13 #Python
python中的装饰器详解
Apr 13 #Python
Python生成器(Generator)详解
Apr 13 #Python
You might like
备份mysql数据库的php代码(一个表一个文件)
2010/05/28 PHP
Yii使用DeleteAll连表删除出现报错问题的解决方法
2016/07/14 PHP
Javascript 日期对象Date扩展方法
2009/05/30 Javascript
js中的值类型和引用类型小结 文字说明与实例
2010/12/12 Javascript
两个select多选模式的选项相互移动(示例代码)
2014/01/11 Javascript
jquery事件的ready()方法使用详解
2015/11/11 Javascript
JavaScript性能优化之小知识总结
2015/11/20 Javascript
最全面的JS倒计时代码
2016/09/17 Javascript
jQuery 选择器(61种)整理总结
2016/09/26 Javascript
JavaScript中return用法示例
2016/11/29 Javascript
微信小程序 解决请求服务器手机预览请求不到数据的方法
2017/01/04 Javascript
详解React 的几种条件渲染以及选择
2018/10/23 Javascript
JQuery事件委托原理与用法实例分析
2019/05/13 jQuery
vue实现拖拽的简单案例 不超出可视区域
2019/07/25 Javascript
世界上最短的数字判断js代码
2019/09/09 Javascript
vue通过过滤器实现数据格式化
2020/07/20 Javascript
nuxt.js写项目时增加错误提示页面操作
2020/11/05 Javascript
Python类的多重继承问题深入分析
2014/11/09 Python
python实现向ppt文件里插入新幻灯片页面的方法
2015/04/28 Python
Python urllib、urllib2、httplib抓取网页代码实例
2015/05/09 Python
Django如何实现内容缓存示例详解
2017/09/24 Python
python利用selenium进行浏览器爬虫
2019/04/25 Python
基于Django的乐观锁与悲观锁解决订单并发问题详解
2019/07/31 Python
Python内置异常类型全面汇总
2020/05/28 Python
aden + anais官方网站:婴儿襁褓、毯子、尿布和服装
2017/06/21 全球购物
教师的实习鉴定
2013/12/15 职场文书
文秘专业个人求职信
2013/12/22 职场文书
高中生家长会演讲稿
2014/01/14 职场文书
教师绩效工资方案
2014/02/01 职场文书
《我要的是葫芦》教学反思
2014/02/23 职场文书
护理人员的自我评价分享
2014/03/15 职场文书
条幅标语大全
2014/06/20 职场文书
宾馆前台接待岗位职责
2015/04/02 职场文书
2015最新民情日记范文
2015/06/26 职场文书
教师网络培训心得体会
2016/01/09 职场文书
win10音频服务未响应怎么解决?win10音频服务未响应未修复的解决方法
2022/08/14 数码科技