多线程
2016-01-09 10:44
309 查看
一、线程
Thread 是threading模块中最重要的类之一,可以使用它来创建线程。有两种方式来创建线程:一种是通过继承Thread类,重写它的run方法;另一种是创建一个threading.Thread对象,在它的初始化函数(__init__)中将可调用对象作为参数传入.
Thread模块是比较底层的模块,Threading模块是对Thread做了一些包装的,可以更加方便的被使用。
另外在工作时,有时需要让多条命令并发的执行, 而不是顺序执行.
有关线程的详细介绍,请参考官方文档 https://docs.python.org/2/library/threading.html
二、例子
举例说明多线程
#多线程
例子引用:/article/6894786.html
Thread 是threading模块中最重要的类之一,可以使用它来创建线程。有两种方式来创建线程:一种是通过继承Thread类,重写它的run方法;另一种是创建一个threading.Thread对象,在它的初始化函数(__init__)中将可调用对象作为参数传入.
Thread模块是比较底层的模块,Threading模块是对Thread做了一些包装的,可以更加方便的被使用。
另外在工作时,有时需要让多条命令并发的执行, 而不是顺序执行.
有关线程的详细介绍,请参考官方文档 https://docs.python.org/2/library/threading.html
二、例子
举例说明多线程
#多线程
#coding=utf-8 import threading #进口threading from time import sleep import time def task1(): print ("Task 1 executed." ) sleep(1) def task2(): print ("Task 2 executed." ) sleep(5) print("多线程:") starttime=time.time(); #记录開始时间 threads = [] #创建一个线程列表,用于存放须要运行的子线程 t1 = threading.Thread(target=task1) #创建第一个子线程。子线程的任务是调用task1函数。注意函数名后不能有() threads.append(t1)#将这个子线程加入到线程列表中 t2 = threading.Thread(target=task2)#创建第二个子线程 threads.append(t2)#将这个子线程加入到线程列表中 for t in threads: #遍历线程列表 t.setDaemon(True) #将线程声明为守护线程。必须在start() 方法调用之前设置。假设不设置为守护线程程序会被无限挂起 t.start() #启动子线程 endtime=time.time();#记录程序结束时间 totaltime=endtime-starttime;#计算程序运行耗时 print ("耗时:{0:.5f}秒" .format(totaltime)); #格式输出耗时 print('---------------------------') #下面为普通的单线程运行过程。 print("单线程:") starttime=time.time(); task1(); task2(); endtime=time.time(); totaltime=endtime-starttime; print ("耗时:{0:.5f}秒" .format(totaltime));
例子引用:/article/6894786.html
相关文章推荐
- CMD方式修改mysql的root用户密码
- Android创建Virtual Devices时出错
- 程序员必知的8大排序(java实现)
- Qt 常用的功能
- c++设计模式(一)工厂模式
- Flex仿Extjs局部遮罩(可带进度条)
- YII2.0之Activeform表单组件用法实例
- 网易游戏技术公开日分享
- 4293: [PA2015]Siano 线段树
- 关于Android自定义view 你所需要知道的基本函数
- apache kafka系列之-监控指标
- 一种日志采集装置和日志采集方法
- 关于Android自定义view 你所需要知道的基本函数
- 【转载】apache kafka系列之-监控指标
- 【LeetCode】169. Majority Element (多数投票算法 & 算法迁移能力)
- 001_如何在官网下载Java JDK的历史版本
- 字符串转换成数组,去最号的分割号
- 大数据性能调优之HBase的RowKey设计
- 史上最简单的问题解决手册』读书笔记--如何更加了解自己
- 如何在AS中使用lambda表达式