参考博客:
https://www.cnblogs.com/i-honey/p/8043648.html
https://blog.csdn.net/chenpkai/article/details/70943609
总结就是:
- start() 方法是启动一个子线程,在该子线程中执行run方法,而线程名就是我们定义的name
- run() 方法并不启动一个新线程,就是在主线程中调用了一个普通函数而已。
因此,如果你想启动多线程,就必须使用start()方法。
具体例子:
import threading import time class MyThread(threading.Thread): def __init__(self,name): threading.Thread.__init__(self) self.name = name def run(self): print("Hello %s"%self.name) time.sleep(3) if __name__ == "__main__": t1=MyThread("zhangsan") t2=MyThread("lisi") t1.start() t2.start()