python thread 并发且顺序运行示例


Posted in Python onApril 09, 2009
#-*- coding:utf-8 -*- 
import threading 
import time 
def fun(name, ls_name, front_thread = None): 
''''' 
线程启动函数 
通过front_thread来使用线程有序的运行 
''' 
time.clock() 
time.sleep(2) 
# 如果front_thread存在,则在front_thread运行完成后,才运行当前线程 
if front_thread != None: 
front_thread.join() 
ls_name.append(name) 
print "thread %s : %s"% (name, time.clock()) if __name__ == '__main__': 
ls_result_name = [] 
ls_thread = [] 
time.clock() 
# 逐一启动1000个线程 
for i in range(0,10): 
if len(ls_thread) == 0: 
t = threading.Thread(target=fun, args=(i,ls_result_name,None)) 
else: 
t = threading.Thread(target=fun, args=(i,ls_result_name,ls_thread[-1])) 
t.start() 
ls_thread.append(t) 
# 等待所有线程结束 
for t in ls_thread: 
t.join() 
print 'ls_result_name:', ls_result_name 
print "main thread:%s" % time.clock()

运行结果为:
thread 0 : 1.99962006344
thread 1 : 2.00000866032
thread 2 : 2.00059113658
thread 3 : 2.00080345407
thread 4 : 2.00100068584
thread 5 : 2.00119456523
thread 6 : 2.00138593033
thread 7 : 2.00166753037
thread 8 : 2.00211758757
thread 9 : 2.0024776892
ls_result_name: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
main thread:2.003211302
线程更明细的使用可参考:
http://docs.python.org/library/threading.html
time.clock模块的更详细介绍可参考:
http://blog.csdn.net/kiki113/archive/2009/03/28/4033017.aspx
Python 相关文章推荐
记录Django开发心得
Jul 16 Python
python实现简单神经网络算法
Mar 10 Python
在cmd命令行里进入和退出Python程序的方法
May 12 Python
Python爬虫包BeautifulSoup简介与安装(一)
Jun 17 Python
对Python中的条件判断、循环以及循环的终止方法详解
Feb 08 Python
python pytest进阶之xunit fixture详解
Jun 27 Python
python使用minimax算法实现五子棋
Jul 29 Python
python set集合使用方法解析
Nov 05 Python
Python实现图像的垂直投影示例
Jan 17 Python
详解python如何引用包package
Jun 07 Python
Keras自动下载的数据集/模型存放位置介绍
Jun 19 Python
python搜索算法原理及实例讲解
Nov 18 Python
python 判断一个进程是否存在
Apr 09 #Python
python ElementTree 基本读操作示例
Apr 09 #Python
python 获取et和excel的版本号
Apr 09 #Python
python启动办公软件进程(word、excel、ppt、以及wps的et、wps、wpp)
Apr 09 #Python
python 获取文件列表(或是目录例表)
Mar 25 #Python
Python字符串的encode与decode研究心得乱码问题解决方法
Mar 23 #Python
python 判断自定义对象类型
Mar 21 #Python
You might like
PHP编程之高级技巧——利用Mysql函数
2006/10/09 PHP
PHP+MYSQL中文乱码问题
2015/07/01 PHP
PHP设计模式之迭代器模式
2016/06/17 PHP
javascript基本语法分析说明
2008/06/15 Javascript
javascript使用activex控件的代码
2011/01/27 Javascript
取得窗口大小 兼容所有浏览器的js代码
2011/08/09 Javascript
用js来定义浏览器中一个左右浮动元素相对于页面主体宽度的位置的函数
2012/01/21 Javascript
jquery实现一个简单好用的弹出框
2014/09/26 Javascript
JS+CSS实现电子商务网站导航模板效果代码
2015/09/10 Javascript
javascript针对不确定函数的执行方法
2015/12/16 Javascript
jQuery事件绑定on()与弹窗实现代码
2016/04/28 Javascript
js实现带农历和八字等信息的日历特效
2016/05/16 Javascript
jquery.qtip提示信息插件用法简单实例
2016/06/17 Javascript
使用express获取微信小程序二维码小记
2019/05/21 Javascript
[49:08]OpTic vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
[00:38]TI珍贵瞬间系列(二):笑
2020/08/26 DOTA
简单谈谈Python中的闭包
2016/11/30 Python
python matplotlib中文显示参数设置解析
2017/12/15 Python
解决安装python库时windows error5 报错的问题
2018/10/21 Python
Matplotlib中文乱码的3种解决方案
2018/11/15 Python
python超时重新请求解决方案
2019/10/21 Python
matlab中imadjust函数的作用及应用举例
2020/02/27 Python
jupyter notebook 参数传递给shell命令行实例
2020/04/10 Python
浅谈keras 的抽象后端(from keras import backend as K)
2020/06/16 Python
Sunglass Hut巴西网上商店:男女太阳镜
2020/10/04 全球购物
涉外经济法专业毕业生推荐信
2013/11/24 职场文书
一名老师的自我评价
2014/02/07 职场文书
财务支持类个人的自我评价
2014/02/14 职场文书
机关办公室岗位职责
2014/04/16 职场文书
阳光体育活动总结
2014/04/30 职场文书
党的群众路线教育实践活动对照检查材料(四风)
2014/09/27 职场文书
2014会计年终工作总结
2014/12/20 职场文书
酒店人事专员岗位职责
2015/04/07 职场文书
五一放假通知怎么写
2015/08/18 职场文书
导游词之山海关
2019/12/10 职场文书
纯CSS3实现div按照顺序出入效果
2021/07/15 HTML / CSS