线程定义:一个程序运行起来之后,一定有个负责执行代码的东西,这个东西就叫线程t = threading.Thread(target=dance) 创建线程实例 t.start() 启动线程,在这里会出现一个子线程threading.enumerate() 打印当前所有线程,返回一个列表【】总结:完成多任务,需要用threading模块来创建多线程来实现,还可以用继承Thread类的形式来创建线程(里面必须定义run方法)。可以查看正在运行的线程名称主线程会在子线程均结束后才停止。调用start后,会出现一个子线程。资源竞争—互斥锁解决多线程可以共享全局变量,同时操作全局变量,可能会出现资源竞争的问题。互斥锁Lock的acquire,release可以解决资源竞争的问题。死锁:两个线程互相抢资源时,就会造成死锁。