社区
进程/线程/DLL
帖子详情
多进程编程与多线程编程的区别
heartgoon2010
2011-09-03 09:16:42
RT,请问这两种方式分别在什么情况下使用,各有什么优缺点?
...全文
1431
10
打赏
收藏
多进程编程与多线程编程的区别
RT,请问这两种方式分别在什么情况下使用,各有什么优缺点?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用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)几乎所有像样点的流氓软件,都会采用多进程模型?
这个怎么解释,这是怎么体会到的呢?
下载
多线程
编程
技术开发资料 高清完整PDF版
多线程
编程
技术开发资料.pdf 个人收集电子书,仅用学习使用,不可用于商业用途,如有版权问题,请联系删除!
多线程
编程
技术开发资料.pdf
多线程
编程
技术开发资料.pdf
Visual C++
编程
技巧精选500例
Visual C++
编程
技巧精选500例,从常用控件、对话框等基础到图形图像、线程进程等方面,深入浅出,通过学习这些基础代码,能全面掌握vc工具,并达到熟练水平
多进程
编程
VS
多线程
编程
创建线程/销毁线程比创建进程/销毁进程更加高效和轻量。所以,一般情况下,会使用
多线程
来进行开发。但是,
多进程
也有它自己独特的优势,进程的“独立性”更好。进程要比线程来的更加稳定一点。虽然进程没有线程那么高效,但是它的独立性带来的稳定是非常关键的,在某些场景下必须使用
多进程
编程
。
多进程
和
多线程
的
区别
是什么?
多进程
和
多线程
的优缺点分析
多进程
和
多线程
的主要
区别
是:线程是进程的子集(部分),一个进程可能由多个线程组成。
多进程
的数据是分开的、共享复杂,需要用IPC;但同步简单。
多线程
共享进程数据,共享简单;但同步复杂。
多进程
,Windows 应用程序中消息有两种送出途径;直接和排队。Windows或某些运行的应用程序可直接发布消息给窗口过程,或者,消息可送到消息列象连续不断轮询消息队列的OS中当前执行的每个进程都 ...
进程/线程/DLL
15,474
社区成员
49,172
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章