进程 线程 协程的区别

Joe's blog / 2023-08-11 / 原文

进程

进程是操作系统, 进行资源分配和调度的基本单位, 多个进程之间相互独立, 进程的特点是稳定性好, 如果一个进程崩溃, 不影响其他进程, 但是进程消耗资源大, 开启的进程数量有限制

线程

线程是cpu进行资源分配和调度的基本单位, 线程是进程的一部分, 是比进程更小的, 能独立运行的基本单位, 一个进程下的多个线程, 可以共享该进程的所有资源, 现成的特点是如果io操作密集, 则可以多线程运行, 效率高, 缺点是如果一个线程崩溃, 都会造成进程的崩溃。

协程

子程序调用总是一个入口, 一次返回, 调用顺序是明确的, 而协程的调用和子程序不同, 协程看上去也是子程序, 但执行过程中在子程序内部可中断, 然后转而执行别的子程序, 在适当的时候再返回来, 接着执行