社区
C语言
帖子详情
求问 什么时候用线程 什么时候用进程?
KingZ_c1ear
2011-06-01 09:10:17
本人菜鸟新人 最近看了看unix下C语言编程的书 和程序 发现很多时候就是在用进程 而不是线程, 现在在工作上想用来处理并发的问题 期间可能有进程的通信或者线程的通信 现在的问题是 用线程还是进程呢?
如果是进程 进程间的通信 是共享内存? fifo? pipe? 求高人指点
...全文
1170
13
打赏
收藏
求问 什么时候用线程 什么时候用进程?
本人菜鸟新人 最近看了看unix下C语言编程的书 和程序 发现很多时候就是在用进程 而不是线程, 现在在工作上想用来处理并发的问题 期间可能有进程的通信或者线程的通信 现在的问题是 用线程还是进程呢? 如果是进程 进程间的通信 是共享内存? fifo? pipe? 求高人指点
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Athenacle_
2011-06-02
打赏
举报
回复
诶。。先学操作系统把
vcf_reader
2011-06-02
打赏
举报
回复
什么时候吃干饭,什么时候吃稀饭,完全取决于自己
黑娃
2011-06-02
打赏
举报
回复
这看你的程序的规模,若是一个很大的系统,有多个模块合作,分工明确,当然是一个进程代表一个“大头”,可用消息,共享内存等通信;而每个进程肯定也有需要多线程的地方,线程之间通信就很直接了,比如同一个进程下的全局变量。
heartgoon2010
2011-06-02
打赏
举报
回复
关注中
leetoo_1977
2011-06-02
打赏
举报
回复
[Quote=引用 7 楼 kingz_c1ear 的回复:]
引用 5 楼 q191201771 的回复:
我的意思是说用多线程不用多进程~~引用 2 楼 q191201771 的回复:
用线程~~~~
在处理并发上效果是一样的都能实现 那线程间的通信 要怎么实现呢?
[/Quote]
线程间的通信, 用 Mutex, 信号量, 消息队列, 共享内存......都能实现。关键是看你要做什么。具体情况具体分析。
Sun_Phoenix
2011-06-01
打赏
举报
回复
[Quote=引用 4 楼 kingz_c1ear 的回复:]
引用 3 楼 keshuichonglx 的回复:
楼主是不是有点搞混了,进程和线程不是两个并列关系的概念,没有哪个程序是用线程不用进程的...
我的意思是处理并发的时候 因为我看代码和书 很多是用的进程来 处理的 所以很迷惑
[/Quote]
进程间通信用共享内存!效率高! 线程是共享进程的资源的 就是共享呀
KingZ_c1ear
2011-06-01
打赏
举报
回复
[Quote=引用 5 楼 q191201771 的回复:]
我的意思是说用多线程不用多进程~~引用 2 楼 q191201771 的回复:
用线程~~~~
[/Quote]
在处理并发上效果是一样的都能实现 那线程间的通信 要怎么实现呢?
KingZ_c1ear
2011-06-01
打赏
举报
回复
[Quote=引用 1 楼 bdmh 的回复:]
你打开一个程序就是打开一个进程,如果同一个程序中处理多任务,就用线程,线程比进程开销要小得多
[/Quote]
我看有些帖子是说 fork一个进程 比 create 一个线程要快 消耗小 因为 fork一个进程是在内核 线程是在用户层的 (unix/linux 下 我现在是在unix下开发。。。。)
就想叫yoko
2011-06-01
打赏
举报
回复
我的意思是说用多线程不用多进程~~[Quote=引用 2 楼 q191201771 的回复:]
用线程~~~~
[/Quote]
KingZ_c1ear
2011-06-01
打赏
举报
回复
[Quote=引用 3 楼 keshuichonglx 的回复:]
楼主是不是有点搞混了,进程和线程不是两个并列关系的概念,没有哪个程序是用线程不用进程的...
[/Quote]
我的意思是处理并发的时候 因为我看代码和书 很多是用的进程来 处理的 所以很迷惑
keshuichonglx
2011-06-01
打赏
举报
回复
楼主是不是有点搞混了,进程和线程不是两个并列关系的概念,没有哪个程序是用线程不用进程的...
就想叫yoko
2011-06-01
打赏
举报
回复
用线程~~~~
bdmh
2011-06-01
打赏
举报
回复
你打开一个程序就是打开一个进程,如果同一个程序中处理多任务,就用线程,线程比进程开销要小得多
进程
和
线程
的区别?什么时候用
进程
?什么时候用
线程
?
进程
和
线程
的区别?什么时候用
进程
?什么时候用
线程
? 答:首先得知道什么是
进程
什么是
线程
? 我的理解是
进程
是指在系统中正在运行的一个应用程序;程序一旦运行就是
进程
,或者更专业化来说:
进程
是指程序执行时的一个实例。
线程
是
进程
的一个实体。
进程
——资源分配的最小单位,
线程
——程序执行的最小单位。
线程
进程
的区别体现在几个方面: 第一:因为
进程
拥有独立的堆栈空间和数据段,所以每当启动一个新的
进程
必须分配...
什么是
进程
?什么是
线程
?
进程
与
线程
的区别?
目录 什么是
进程
?什么是
线程
? 为什么要有
线程
?
进程
与
线程
的区别?
进程
与
线程
的选择取决条件? 什么是
进程
?什么是
线程
?
进程
:
进程
是并发执行程序在执行过程中资源分配和管理的基本单位(资源分配的最小单位)。
进程
可以理解为一个应用程序的执行过程,应用程序一旦执行,就是一个
进程
。每个
进程
都有自己独立的地址空间,...
进程
和
线程
的区别?什么时候用
进程
?什么时候用
线程
?----看到好的复制到自己的园子里哈哈...
进程
和
线程
的区别?什么时候用
进程
?什么时候用
线程
? 答:首先得知道什么是
进程
什么是
线程
? 我的理解是
进程
是指在系统中正在运行的一个应用程序;程序一旦运行就是
进程
,或者更专业化来说:
进程
是指程序执行时的一个实例。
线程
是
进程
的一个实体。
进程
——资源分配的最小单位,
线程
——程序执行的最小单位。
线程
进程
的区别体现在几个方面: 第一:因为
进程
拥有独立的堆栈空间和数据段,...
什么时候用多
线程
什么时候用多
进程
呢?GUL
那么在 Python 中什么时候用多
线程
什么时候用多
进程
呢?当在CPU-bound(计算密集型:绝大多数时间在计算) 时最好用 - 多
进程
, 而在 I/O bound(I/O密集型 : IO 处理 并且 大多时间是在等待) 的时候最好用 - 多
线程
。 python因为其全局解释器锁GIL而无法通过
线程
实现真正的平行计算。这个论断我们不展开,但是有个概念我们要说明,IO密集型 vs. 计算密集型。 IO密集型:读取文件,读取网络套接字频繁。 计算密集型:大量消耗CPU的数学与逻辑运算,也就是我们这里
什么是
进程
、
线程
、什么时候用
进程
、
线程
什么是
进程
什么是
线程
?
进程
是指在系统中正在运行的一个应用程序;程序一旦运行就是
进程
进程
可以认为是程序执行时的一个实例。
进程
是系统进行资源分配的独立实体, 且每个
进程
拥有独立的地址空间。一个
进程
无法直接访问另一个
进程
的变量和数据结构, 如果希望让一个
进程
访问另一个
进程
的资源,需要使用
进程
间通信,比如:管道,文件, 套接字等。 一个
进程
可以拥有多个
线程
,每个
线程
使用其所属
进程
的栈空间。
线程
与...
C语言
70,024
社区成员
243,263
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章