【20241028 每日一题】进程、线程、协程有什么区别?并说出它们分别适合什么场景。

难度

中等

题目

进程、线程、协程有什么区别?并说出它们分别适合什么场景。

进程:独立的内存空间,资源隔离性好,适合多任务处理。
线程:共享内存空间,通信方便,适合高并发处理。
协程:用户态轻量级线程,切换开销小,适合 I/O 密集型和高并发场景。

1 Like

MoonBoat - 每日一题 - 11

进程:操作系统会以进程为单位分配系统资源,进程是资源分配的最小单位,进程之间可以并发执行,真正在处理机上运行的是线程

线程:是操作系统调度(CPU调度)的最小单位,同一个进程的不同线程可以并发执行,同一个进程的线程共用该线程的所有资源,线程在执行的时候需要协作同步,不同进程的线程要利用消息通信的办法实现同步

协程:不是由操作系统管理,而是完全由程序控制,携程在子程序中可中断,转而执行别的携程,在适当的时候返回