1) 对比维度 2) 多进程 3) 多线程 4) 总结
a) 资源共享、同步
数据共享复杂,需要用IPC;数据是分开的,同步简单
因为共享进程资源,资源共享简单,但也是因为这个原因导致同步复杂
各有优势
b) 内存、CPU
占用内存多,切换复杂,CPU利用率低
占用内存少,切换简单,CPU利用率高
线程占优
c) 创建销毁、切换
创建销毁、切换复杂,速度慢
创建销毁、切换简单,速度很快
线程占优
d) 编程、调试
编程简单,调试简单
编程复杂,调试复杂
进程占优
e) 可靠性
进程间不会互相影响
一个线程挂掉将导致整个进程挂掉
进程占优
f ) 分布式
适应于多核、多机分布式;如果一台机器不够,扩展到多台机器比较简单
适应于多核分布式
进程占优