已解决
linux 基础知识1---线程与进程
来自网友在路上 153853提问 提问时间:2023-10-09 05:25:45阅读次数: 53
最佳答案 问答题库538位专家为你答疑解惑
线程/进程
1、什么是进程 什么是线程?区别是什么?
进程是资源分配最小单位 线程是程序执行的最小单元,是进程的执行流
区别:
内存空间:
进程有自己的独立地址空间,每启动一个进程,相同都会为它分配地址空间,建立数据表维护堆栈 数据段,这种操作非常昂贵。线程是共享进程中的数据,使用相同的地址空间,所以,CPU切换线程的花费远小于进程。
通信:
进程IPC
多线程之间的通信更加方便 一个线程死了,会导致整个进程死,
因为进程拥有独立内存地址,一个进程死了,并不会影响其他进程
资源利用:
进程切换 消耗资源大,效率低, 涉及到频繁切换时,使用线程远比进程好,要求同时进行并且共享某些变量时,只能使用线程
执行过程:
每个独立的进程都有一个程序运行入口和程序执行序列,而线程不能独立执行,必须依靠与应用程序。由应用程序提供多个线程控制。
开销
进程开销大,但是能够很好进行资源管理和保护。
2、何时使用 线程和进程?
要求效率高,频繁切换,**对资源管理和保护没有要求,**使用线程。
对资源的管理和保护有要求,不限制开销和效率时,使用进程。
进程是做大事,线程是做小事。
创建和销毁频繁使用线程。因为创建进程开销大。
查看全文
99%的人还看了
相似问题
猜你感兴趣
版权申明
本文"linux 基础知识1---线程与进程":http://eshow365.cn/6-17625-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!