python3.4多线程初次尝试
来源:互联网 发布:外文数据库检索 编辑:程序博客网 时间:2024/06/03 23:46
继承threading.Thread,并且创建7个线程,设置一个local的局部变量属性,并在线程的run函数中随机生成8个随机数,利用local属性存各自线程的随机数。
调用start函数,启动线程,如果调用join函数则变为串行,执行完第一个线程再执行第二个线程依次执行,最后执行主线程。
(注:python版本为3.4)
import threadingimport timeimport random#继承threading.Thread,并重载run函数。class jdThread(threading.Thread): def __init__(self,num): threading.Thread.__init__(self) self.num = num self.create_time = time.time() self.local = threading.local() #local具有全局访问权,主线程,子线程都能访问它,但是它的值却是各当前线程有关, #如果想在当前线程保存一个全局值,并且各自线程互不干扰,使用local类,实际它是一个字典 def run(self): self.local = [] time.sleep(1) print("线程",self.num,"被创建") for i in range(8): self.local.append(random.randrange(10)) #显示线程的状态,和随机产生的10个数字 print(threading.currentThread(),self.local) print(time.time()-self.create_time) print("线程",self.num,"结束") print("\n") print ("主线程开始")for item in range(7): t = jdThread(item) t.start() #join函数控制线程执行顺序,不要在start之前调用join函数 #t.join() #isDaemon函数查看线程后台运行状态 #print(t.isDaemon()) print ("主线程结束")
0 0
- python3.4多线程初次尝试
- Matlab下的多线程初次尝试
- 初次尝试
- 【多线程编程】初次尝试 - UnixC 的三线程计算
- 初次尝试BLOG
- 初次尝试BLOG
- DWR初次尝试
- zend framework 初次尝试
- 初次尝试csdn博客
- 初次尝试web service
- 20120717 openSUSE初次尝试
- QuickSever 初次尝试
- AXIS 初次尝试
- gpg初次尝试
- 初次尝试循环体
- doxygen 初次使用尝试
- Volley初次尝试
- 初次尝试HTTPS
- 线程操作----取消线程
- 黑马程序员:抽象类、接口
- java 与mysql 数据类型对照表
- android问题集锦
- google ProtoBuf开发者指南(比xml和jason都好的协议)
- python3.4多线程初次尝试
- poj2155Matrix
- POJ 2992-Divisors(求组合数质因子的个数)
- Sqlite 创建触发器(删除)
- HDU 1020 — Encoding
- Python学习之Threading, Queue
- 第四周项目-1.3
- 多线程的实现
- 黑马程序员——IO流(中篇)