Python多任务编程-06创建线程对象时传递参数

2023-12-19 23:17:35

注意点:

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()

文章来源:https://blog.csdn.net/weixin_47702917/article/details/135053285
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。