18.6使用threading模块

#!/usr/bin/env python
#
-*- coding:utf-8 -*-

"""从Thread类中派生出一个子例,创建一个这个子类的实例"""

import threading
from time import sleep, ctime

loops
= (4, 2)


class MyThread(threading.Thread):
"""
1.子类化Thread类
2.要先调用基类的构造器,进行显式覆盖
3.重新定义run()函数
"""
def __init__(self, func, args, name=''):
super(MyThread, self).
__init__()
self.name
= name
self.func
= func
self.args
= args

def run(self):
self.func(
*self.args)


def loop(nloop, nsec):
print 'start loop', nloop, 'at:', ctime()
sleep(nsec)
print 'loop', nloop, 'done at:', ctime()


def main():
print 'starting at:', ctime()
threads
= []
nloops
= range(len(loops))

for i in nloops:
t
= MyThread(loop, (i, loops[i]), loop.__name__) # 创建子类的实例
threads.append(t)

for i in nloops:
threads[i].start()

for i in nloops:
threads[i].join()

print 'all DONE at:', ctime()

if __name__ == '__main__':
main()

更多相关文章

  1. 【实例】python re 正则表达式 同时选择带有“是”和“的”句子
  2. Python数据挖掘实例(实时更新)
  3. 使用Python编写简单的端口扫描器的实例分享【转】
  4. UNIX-LINUX编程实践教程->第八章->实例代码注解->写一个简单的sh
  5. Linux编程之《只运行一个实例》
  6. Linux下的find 命令使用实例
  7. 守护进程的单实例实现
  8. Linux----------zabbix监控-应用实例
  9. Linux命令备忘实例(10)——目录管理

随机推荐

  1. android图片涂鸦,具有设置画笔,撤销,缩放移
  2. Android(安卓)学习笔记 ——第二行代码
  3. Android使用AudioRecord遇到的问题与解决
  4. Android ANR问题分析思路
  5. Android(安卓)Message 及其使用
  6. android 电容屏(三):驱动调试之驱动程序分析
  7. ym—— Android(安卓)5.0学习之Activity
  8. 关于Android锁屏的问题
  9. android提高启动速度
  10. [Android Develop_003]-Android Database