操作系统最小分配资源的单位是进程,操作系统的最小调度单位是线程;
一个程序的执行就是一个进程,一个进程可以包含多个线程,单个CPU内核只能执行一个进程;
多进程才是真正的并发操作,多线程如果仅仅使用同一个CPU内核,仍然是多线程之间的交替执行,不是真正的并发;
每个进程会被分配独立的内存空间;多进程之间的内存共享往往比较麻烦~
一个进程下的多线程内存共享,但是如果做到内存同步需要用到锁机制;
多进程之间的内存共享的话可以用队列;
python的多进程可通过multiprocessing实现
多线程可通过Threading实现
多线程中:主进程一般不会等待子线程结束,如果要等待的话,就需要用到join
具体可看https://zhuanlan.zhihu.com/p/46368084