多线程
避免使用thread 原因是他不支持守护线程
import thread 引入线程模块
threads = [] 创建线程数组,用于装载线程
threading.Thread(group = None, target = None, name = None, args = (), kwargs = {}) 通过调用threading 模块的 Thread()方法来创建线程
def music(func,loop):
...
def movie(func,loop):
...
threads = []
t1 = threading.Thread(target = music,args = ('爱情买卖',2) )
threads.append(t1)
t2 = threading.Thread(target = movie,args = ('阿凡达',2) )
threads.append(t2)
if __name__ == __main__:
#开始线程
for t in threads:
t.start()
#守护线程
for t in threads:
t.join()
print('all end: %s' % ctime())
优化线程的创建
循环创建线程
创建线程类 自定义
class MyThread(threading.Thread):
def __init__(self,func,args,name = ''):
threading.Thread.__init__(self)
self.func = func
self.args = args
self.name = name
def run(self):
self.func(*self.args)
多进程
multiprocessing模块的Process