目标:
1:能够向线程的函数传递参数!(三种方法)
2:能够说出多线程执行的顺序特点
一:向线程函数传参数方法1——args元组传参
功能:向子线程target指定的函数任务传递参数,因为有的函数是要有参数的
语法:thread_obj = threading.Thread(target = 函数名 , agrs = (函数参数1,函数参数2,函数参数3))
快速代码体验
二:线程函数传递参数方法2——kwargs字典传参
功能:向子线程target指定的函数任务传递参数,因为有的函数是要有参数的
语法:thread_obj = threading.Thread(target = 函数名 , kwagrs = {“函数参数1”:参数1的值,…….}
快速代码体验
三:线程函数传递参数方法2——args元组传参以及kwargs字典混合搭配
功能:向子线程target指定的函数任务传递参数,因为有的函数是要有参数的
语法:thread_obj = threading.Thread(target = 函数名 ,args=(参数1,) kwargs = {“函数参数2”:参数2的值,…….}
注意事项:混合传参,也是总共传递那几个参数
快速代码体验
四:子线程的执行顺序
答:子线程是由系统独立调动的和分派的基本单元,所以子线程的执行顺序是无序的,是cpu决定的,不是程序员决定的
总结:
1:每一个线程(子线程、主线程)都有自己的名字,它们由python自动指定
2:线程的run()方法结束时该线程结束执行
3:我们无法控制线程的执行顺序,但是我们可以通过其他方式影响调度方式