【第22期】观点:IT 行业加班,到底有没有价值?

多进程编程的优缺点

原创 2017年01月02日 21:59:08

多进程优点:

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

多线程缺点:

逻辑控制复杂,需要和主程序交互; 需要跨进程边界,如果有大数据量传送,就不太好,适合小数据量传送、密集运算 多进程调度开销比较大; 最好是多进程和多线程结合,即根据实际的需要,每个CPU开启一个子进程,这个子进程开启多线程可以为若干同类型的数据进行处理。当然你也可以利用多线程+多CPU+轮询方式来解决问题……

方法和手段是多样的,关键是自己看起来实现方便有能够满足要求,代价也合适。

版权声明:允许转载,标明出处就可以了 举报

相关文章推荐

多进程编程总结

进程: 进程的创建: pid_t fork(void); 该函数每次调用都会返回两次,在父进程中返回子进程ID,在子进程中返回0,所以当fork()==0的时候就是子进程了,失败就返回-1 for...

Linux下的多进程编程初步(转载)

最近在学习linux环境高级编程,多进程编程算是编程中的最重要的一个部分了,本文让我学习和明白了很多,所以转载过来。让更多想多线程编程的人学习。只有顶到首页才能让更多的人学习。 文章摘要:   ...

程序员升职加薪指南!还缺一个“证”!

CSDN出品,立即查看!

【Linux】Linux 下多进程编程详解

一.多进程程序的特点    进程是一个具有独立功能的程序关于某个数据集合的一次可以并发执行的运行活动,是处 于活动状态的计算机程序。    进程作为构成系统的基本细胞, 不仅是系统内部...

C++STL之map学习

map   map是一种关联容器,存储相结合形成的一个关键值和映射值的元素。Map 是一种Pair Associative Container,意味着它的值类型为 pair. 而且也是 Un...

Linux并发服务器编程之多进程并发服务器

前面的话 服务器按处理方式可以分为迭代服务器和并发服务器两类。平常用C写的简单Socket客户端服务器通信,服务器每次只能处理一个客户的请求,它实现简单但效率很低,通常这种服务器被称为迭代服务器...

Linux多进程——利用fork()函数进行多进程编程

fork()函数是Linux系统中唯一可以创建一个新进程的方法。其新创建的进程称为子进程,原进程称为父进程。子进程将从父进程处继承了整个父进程的地址空间(包括进程上下文、代码段、进程堆栈、内存信息、打...

并发模型编程中多进程与多进程的选择

在进行并发程序的实现时我们经常面临一个问题,到底是该选择多线程并发模型还是多线程并发模型呢?要在这两者间进行一个选择,首先需要明白两者的优缺点: 多线程的优点 方便高效的内存共享 ...

多进程编程

多进程编程 写在前面的话 本文主要根据本人在UNIX系统上的编程实践经验总结而成, 既做为自己在一个时期内编程实践的部分总结, 又可成为文章发表. 对UNIX程序员初学者来说是一个小小的经验...

Linux高性能服务器编程——多进程编程

多进程编程 多进程编程包括如下内容: 复制进程影映像的fork系统调用和替换进程映像的exec系列系统调用。 僵尸进程以及如何避免僵尸进程 进程间通...

详解Java中多进程编程的实现

转载地址链接:http://www.jb51.net/article/74430.htm 1.Java进程的创建 Java提供了两种方法用来启动进程或其它程序: (1)使用Runtime的e...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)