一、导入线程库
import threading
/或
from threading import Thread
二、创建子线程
函数创建线程
Thread(target,args) - 创建子线程对象
说明:
target —— Function,需要传一个函数(这个函数中的内容会在子线程中执行)
args —— 元祖,target对应的函数的参数
# 创建
t1 = threading.Thread(target=函数, args=('函数参数',))
/或
t2 = Thread(target=函数, args=('函数参数',))
# 执行
t1.start()
t2.start()
注:当通过创建好的子线程对象调用start方法的时候,会自动在子线程中调用target对应的函数, 并且将args中值作为实参
类创建线程
可以通过写一个类继承Thread类,来创建属于自己的线程类。
- 声明类继承Thread
- 重写run方法。这个方法中的任务就是需要在子线程中执行的任务
- 需要线程对象的时候,创建当前声明的类的对象;然后通过start方法在子线程中去执行run方法中的任务
# 声明
class 类(Thread):
def __init__(self, 参数):
super().__init__()
run()中需要的参数 = 参数
def run(self):
执行的任务
# 创建
t = 类(参数)
# 执行
t.start()
三、join()
线程对象调用join方法,会导致join后的代码会在线程中的任务结束后才执行