博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
嵌入式100题(002):多进程、多线程的优缺点
阅读量:4167 次
发布时间:2019-05-26

本文共 555 字,大约阅读时间需要 1 分钟。

标题多进程、多线程的优缺点?

多进程优点

•	每个进程互相独立,不影响主程序的稳定性,子进程崩溃没关系; 	•	通过增加CPU,就可以容易扩充性能;•	可以尽量减少线程加锁/解锁的影响,极大提高性能,就算是线程运行的模块算法效率低也没关系;•	每个子进程都有2GB地址空间和相关资源,总体能够达到的性能上限非常大

多进程缺点

•	逻辑控制复杂,需要和主程序交互; 	•	需要跨进程边界,如果有大数据量传送,就不太好,适合小数据量传送、密集运算•	多进程调度开销比较大;

多线程的优点

•	无需跨进程边界; 	•	程序逻辑和控制方式简单; 	•	所有线程可以直接共享内存和变量等; 	•	线程方式消耗的总资源比进程方式好;

多线程缺点

•	每个线程与主程序共用地址空间,受限于2GB地址空间; 	•	线程之间的同步和加锁控制比较麻烦;•	一个线程的崩溃可能影响到整个程序的稳定性; 	•	到达一定的线程数程度后,即使再增加CPU也无法提高性能,例如Windows Server2003,大约是1500个左右的线程数就快到极限了(线程堆栈设定为1M),如果设定线程堆栈为2M,还达不到1500个线程总数;•	线程能够提高的总性能有限,而且线程多了之后,线程本身的调度也是一个麻烦事儿,需要消耗较多的CPU。

转载地址:http://ptrxi.baihongyu.com/

你可能感兴趣的文章
HTML5学习之——HTML 5 服务器发送事件
查看>>
SVG学习之——HTML 页面中的 SVG
查看>>
SVG 形状学习之——SVG圆形
查看>>
SVG 滤镜学习之——SVG 滤镜
查看>>
mysql中用命令行复制表结构的方法
查看>>
hbase shell出现ERROR: org.apache.hadoop.hbase.ipc.ServerNotRunningYetException
查看>>
让代码变得更优雅-Lombok
查看>>
解决Rhythmbox乱码
查看>>
豆瓣爱问共享资料插件发布啦
查看>>
Ubuntu10.10 CAJView安装 读取nh\kdh\caj文件 成功
查看>>
kermit的安装和配置
查看>>
vim 配置
查看>>
openocd zylin
查看>>
进程创建时文件系统处理
查看>>
内核线程创建
查看>>
linux中cat命令使用详解
查看>>
java中的异常机制
查看>>
java SE面向对象思维导图
查看>>
三维分析之视频投放
查看>>
SuperMap iDesktop之栅格值怎么查
查看>>