Python 线程、进程、协程的关系与区别和使用方式
线程
线程使用方便,但是又 GIL 锁,所以适合 IO 密集型操作
进程
进程较重,启动耗费资源,但是没有 GIL 锁问题,所以适合 CPU 密集型,同时在进程中使用线程,每个进程中只会有一个 GIL 锁
协程
协程较为轻量,但是代码编写麻烦
线程使用方便,但是又 GIL 锁,所以适合 IO 密集型操作
进程较重,启动耗费资源,但是没有 GIL 锁问题,所以适合 CPU 密集型,同时在进程中使用线程,每个进程中只会有一个 GIL 锁
协程较为轻量,但是代码编写麻烦