python核心编程-线程threading模块之四

来源:互联网 发布:现在有什么网络歌曲 编辑:程序博客网 时间:2024/05/21 19:38
#!/usr/bin/env python# -*- coding: UTF-8 -*- ''' function :线程模块threading    仅练习'''from time import sleep, ctimeimport threadingloops = (4, 2)class MyThread(threading.Thread):       def __init__(self, func, args, name=''):        threading.Thread.__init__(self)        self.name = name        self.func = func        self.args = args    def getResult(self):        return self.res    def run(self):        print 'staring', self.name, 'at:', ctime()        self.res = apply(self.func, self.args)        print self.name, 'finished at:', ctime()def loop(nloop, nsec):    print 'start loop', nloop, 'at:', ctime()    sleep(4)    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()

输出:

D:\Python27\test>thread07.py
starting at: Wed Jan 20 22:32:56 2016
staringstaring looploop at: at:Wed Jan 20 22:32:56 2016
Wed Jan 20 22:32:56 2016start loop
start loop 01 at:at: Wed Jan 20 22:32:56 2016Wed Jan 20 22:32:56 2016

loop 0 done at:loop Wed Jan 20 22:33:00 20161
loop finished at: Wed Jan 20 22:33:00 2016
done at: Wed Jan 20 22:33:00 2016
loop finished at: Wed Jan 20 22:33:00 2016
all DONE at: Wed Jan 20 22:33:00 2016

D:\Python27\test>

0 0
原创粉丝点击