python多线程技术(三)
我们接着上篇的内容来分享,我们可以基于1/2来构建一个超级播放器的功能。这样看起来可能会更加的有意思,代码量也会更加简洁。
1.创建一个超级播放器:
#创建一个超级播放器
def super_player(file,time):
for i in range(2):
print('start playing: %s %s'%(file,ctime()))
sleep(time)
2.定义播放文件和时长的字典
#播放的文件和播放时长
list={'大地.mp3':3,'巨齿鲨':4,'真的爱你':5}
3.定义线程组
threads=[]
4.创建线程
#创建线程
for file,time in list.items():
t = threading.Thread(target=super_player,args=(file,time))
threads.append(t)
5.启动线程、守护线程
if __name__ == '__main__':
#启动线程
for i in range(len(list)):
threads[i].start()
for i in range(len(list)):
threads[i].join()
#主线程
print('end: %s'%ctime())
6.输出结果:
C:\Python35\python.exe E:/project/mutil.py
start playing: 大地.mp3 Fri Aug 17 16:12:23 2018
start playing: 真的爱你 Fri Aug 17 16:12:23 2018
start playing: 巨齿鲨 Fri Aug 17 16:12:23 2018
start playing: 大地.mp3 Fri Aug 17 16:12:26 2018
start playing: 巨齿鲨 Fri Aug 17 16:12:27 2018
start playing: 真的爱你 Fri Aug 17 16:12:28 2018
end: Fri Aug 17 16:12:33 2018
Process finished with exit code 0

将喜欢的一切留在身边,这便是努力的意义。

浙公网安备 33010602011771号