注意点:
1.创建Thread对象的时候:
target指明线程将来去哪里执行代码。
args指线程去执行代码的时候所携带的参数,它是一个元组。
2. 如果target指明的函数只有一个形参,那么target的元组中必须只有1个元素
? ? 如果target指明的函数有n个形参,那么args的元组也必须有n个元素。
3.可以通过关键字kwargs进行传参:例如kwargs = “n”:55
4.混个使用args和kwargs时必须要赋值的元素数等于函数的型参数。
示例代码如下:
import threading
import time
def print_lines(num):
for i in range(num):
print("111")
time.sleep(0.1)
def print_lines2(num1, num2):
for i in range(num1):
print("111")
time.sleep(0.1)
for i in range(num2):
print("111")
time.sleep(0.1)
def work2(num1, num2, num, n):
print(f"num = {num}, num1 = {num1}, num2 = {num2}, n = {n}")
t1 = threading.Thread(target=print_lines, args=(5,))
t2 = threading.Thread(target=print_lines2, args=(3, 4))
t3 = threading.Thread(target=work2, args=(11, 22), kwargs={"n": 44, 'num3':66})
t1.start()
t2.start()
t3.start()