社区
进程/线程/DLL
帖子详情
多进程编程与多线程编程的区别
heartgoon2010
2011-09-03 09:16:42
RT,请问这两种方式分别在什么情况下使用,各有什么优缺点?
...全文
1434
10
打赏
收藏
多进程编程与多线程编程的区别
RT,请问这两种方式分别在什么情况下使用,各有什么优缺点?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用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版
在
多线程
编程
中,一个进程可以创建多个线程来执行不同的任务或相同的任务,以实现并行处理和任务分解。以下将详细阐述
多线程
编程
技术的相关知识点。 1. 线程基础 线程是操作系统能够进行运算调度的最小单位。它被...
多线程
编程
技术开发资料.pdf
标题与描述均提到了“
多线程
编程
技术开发资料”,这表明文档主要聚焦于
多线程
编程
技术的探讨,旨在为开发者提供相关的理论知识、实践技巧以及可能的应用场景。
多线程
编程
是一种软件设计模式,它允许多个线程同时执行...
多进程
编程
VS
多线程
编程
创建线程/销毁线程比创建进程/销毁进程更加高效和轻量。所以,一般情况下,会使用
多线程
来进行开发。...虽然进程没有线程那么高效,但是它的独立性带来的稳定是非常关键的,在某些场景下必须使用
多进程
编程
。
多进程
和
多线程
的
区别
是什么?
多进程
和
多线程
的优缺点分析
多进程
和
多线程
的主要
区别
是:线程是进程的子集(部分),一个进程可能由多个线程组成。
多进程
的数据是分开的、共享复杂,需要用IPC;但同步简单。
多线程
共享进程数据,共享简单;但同步复杂。
多进程
,Windows...
一篇详细教程,并发
编程
之
多线程
与
多进程
作者:郭震我们之前探讨过“生成器与迭代器之异步生成器”,了解了生成器的异步用法,接下来的主题将进一步扩展我们对并发
编程
的理解,专注于 Python 中的“
多线程
”与“
多进程
”这两种并发
编程
模型. 什么是并发
编程
? ...
进程/线程/DLL
15,473
社区成员
49,171
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章