1.进程
2.线程
3.协程
常见问题:
1.进程、线程的区别是什么
共同点:都是实现多任务,为了提高效率。
进程:独立内存空间,对于系统的资源开销要比线程大。
线程:一个进程当中可以有多个线程,共享内存。
2.创建线程(进程)方式:
(1)Thread类下的Thread(target=函数名)
(2)创建一个线程类,这个类需要继承Thread类,覆写run方法。
3.协程:
为什么python要有协程?
原因是python下面的线程是伪多线程,GIL(全局解释锁),为了让程序提高执行效率,python才发明了协程,协程也叫做“微线程”,用yield来实现(也有专门一个第三方包)。yield的作用可使函数中断,并保存中断状态,中断后,代码可以继续往下执行,过一段时间还可以再重新调用这个函数,从上次yield的下一句开始执行。
总结:一般情况下在CPU计算密集的时候使用多进程,在IO(输入输出)密集的时候使用多线程。