多进程编程与多线程编程的区别

heartgoon2010 2011-09-03 09:16:42
RT,请问这两种方式分别在什么情况下使用,各有什么优缺点?
...全文
1397 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
qunqun2012 2011-09-03
  • 打赏
  • 举报
回复
mark [Quote=引用 6 楼 ok1234567 的回复:]

一般而言
进程有独立的地址空间,而同一进程中的线程则需要共享
开一个进程成本高于线程,优点是隔离度好
开一个线程的成本较低,但是需要程序员管控的东西也多,相互影响而出问题的机会也较大

对于频繁启动的、大量的执行单元,恐怕只能选择线程(纤程)模型
所以,从程序员的角度,我们只能看到某种代码是线程安全的,而没有说进程安全的:)
[/Quote]
ok1234567 2011-09-03
  • 打赏
  • 举报
回复
几乎所有像样点的流氓软件,都会采用多进程模型
那叫,赶不尽,杀不绝

[Quote=引用 5 楼 my_id_is_null 的回复:]
在Windows平台,看到多进程就让我想到了360安全卫士客户端。服务端就不清楚了,貌似用得比较多。
[/Quote]
ok1234567 2011-09-03
  • 打赏
  • 举报
回复
一般而言
进程有独立的地址空间,而同一进程中的线程则需要共享
开一个进程成本高于线程,优点是隔离度好
开一个线程的成本较低,但是需要程序员管控的东西也多,相互影响而出问题的机会也较大

对于频繁启动的、大量的执行单元,恐怕只能选择线程(纤程)模型
所以,从程序员的角度,我们只能看到某种代码是线程安全的,而没有说进程安全的:)
winginsky 2011-09-03
  • 打赏
  • 举报
回复
在Windows平台,看到多进程就让我想到了360安全卫士客户端。服务端就不清楚了,貌似用得比较多。
shenyi0106 2011-09-03
  • 打赏
  • 举报
回复
按照一般操作系统的理论而言,进程是资源的拥有者(或者说是管理者),而线程是执行者,
更换执行者比更换管理者要简单和便宜很多;但是linux貌似都差不多,所以这个概念我觉得还是有必要分开说比较好
Eleven 2011-09-03
  • 打赏
  • 举报
回复
http://www.cnblogs.com/li0803/archive/2008/11/02/1323930.html
Gloveing 2011-09-03
  • 打赏
  • 举报
回复
如果一个程序既要处理大量运算、数据,又要能很好的显示界面、及时响应消息,就多线程吧;
见习学术士 2011-09-03
  • 打赏
  • 举报
回复
当运行的个体之间(线程/进程)保持独立性,互补影响时(一个进程挂了,其它的还在),就使用多进程了。

其它情况多线程就好。

上面指的多进程/多线程 执行的是相同的任务。
ok1234567 2011-09-03
  • 打赏
  • 举报
回复
进程是OS管理的,进程和进程之间本来就是逻辑隔离的,只要OS不出问题,一个进程的错误一般不会影响到其它进程:好处,隔离得好;缺点,成本高,信息资源共享麻烦

线程是在进程中启动的执行单元,共享进程资源,有利于争夺CPU等分时资源,实现并发多任务...好处:性能优越,缺点,程序设计麻烦,这里的概念“线程安全”就是对于所有的资源使用冲突都解决得很好,并不容易的

流氓软件,都会采用多进程模型?不然用户就会轻易终止软件的执行,多进程的时候,当你终止一个进程,它就给你启动一个,你永远也终止不了,它一直都可以运行:进程之间互相看守...
heartgoon2010 2011-09-03
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 ok1234567 的回复:]
一般而言
进程有独立的地址空间,而同一进程中的线程则需要共享
开一个进程成本高于线程,优点是隔离度好
开一个线程的成本较低,但是需要程序员管控的东西也多,相互影响而出问题的机会也较大

对于频繁启动的、大量的执行单元,恐怕只能选择线程(纤程)模型
所以,从程序员的角度,我们只能看到某种代码是线程安全的,而没有说进程安全的:)
[/Quote]
谢谢你的回答!我还是不是太明白
(1)隔离度好?程序员掌控的东西多?
在socket网络通信中,每来一个连接,fork一个进程去执行I/O跟启动一个线程去执行I/O似乎看不出进程的这两个优点。能不能举个特殊的例子说明一下。
(2)几乎所有像样点的流氓软件,都会采用多进程模型?
这个怎么解释,这是怎么体会到的呢?

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧