多线程和多进程最大的不同在于
多进程中,同一个变量,各自有一份拷贝存在于每个进程中,互不影响
多线程中,所有变量都由所有线程共享,所以,任何一个变量都可以被任何一个线程修改
因此,线程之间共享数据最大的危险在于多个线程同时改一个变量,把内容给改乱了。
不看了…
反正 多线程 由于 python 的 全局解释器锁 的存在变成了一个 美丽的梦
多线程在Python中只能交替执行,即使100个线程跑在100核CPU上,也只能用到1个核。
Python虽然不能利用多线程实现多核任务,但可以通过多进程实现多核任务。多个Python进程有各自独立的GIL锁,互不影响。