大家在使用python开发或测试中,难免会用到python的多线程操作,下面我就来简单介绍一下多线程的2种基本的实现方法:
【说明】:
(1)在多线程中我们需要使用的第三方库是threading;
(2)线程必须依附于进程使用;
(3)线程执行完毕后会自动释放。
方法一:面向对象的方法实现多线程
# -*- coding: utf-8 -*-
import threading
class CThread (threading.Thread):
def __init__(self, n):
threading.Thread.__init__(self) #重写父类方法
self.num = n
def run(self):
print(self.num)
if __name__ == "__main__":
a = CThread(1) # 开启一个线程
a.start() # 启动线程
# 开启多个线程
# for i in range(6):
# a = CThread(i) # 连续开启多个线程
# () # 启动线程
方法二:面向过程的方法实现多线程
import threading
import time
def download(i):
print('开始下载文件%d'%i)
time.sleep(1)
print('文件下载完成')
if __name__=='__main__':
#多线程
for i in range(5):#利用循环创建5个线程
t=threading.Thread(target=download,args=(i,))
print(len(threading.enumerate())) #查看线程数量和进程数量总和
#启动线程
t.start()