进程和线程有什么联系和区别?
来源:互联网 发布:ubuntu怎么移动文件 编辑:程序博客网 时间:2024/05/16 06:26
定义:
1) 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位。
2) 线程是进程的一个实体,是CPU调度和分派的基本单位,他是比进程更小的能独立运行的基本单位,线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),一个线程可以创建和撤销另一个线程;
2.进程和线程的关系:
(1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。
(2)资源分配给进程,同一进程的所有线程共享该进程的所有资源。
(3)线程在执行过程中,需要协作同步。不同进程的线程间要利用消息通信的办法实现同步。
(4)处理机分给线程,即真正在处理机上运行的是线程。
(5)线程是指进程内的一个执行单元,也是进程内的可调度实体。
3.线程与进程的区别:
(1)调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位。
(2)并发性:不仅进程之间可以并发执行,同一个进程的多个线程之间也可以并发执行。
(3)拥有资源:进程是拥有资源的一个独立单位,线程不拥有系统资源,但可以访问隶属于进程的资源。
(4)系统开销:在创建或撤销进程的时候,由于系统都要为之分配和回收资源,导致系统的明显大于创建或撤销线程时的开销。但进程有独立的地址空间,进程崩溃后,在保护模式下不会对其他的进程产生影响,而线程只是一个进程中的不同的执行路径。线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多线程的程序健壮,但是在进程切换时,耗费的资源较大,效率要差些
阅读全文
0 0
- 进程和线程有什么联系和区别?
- 线程是什么?进程是什么?二者有什么区别和联系?
- 线程是什么?进程是什么?二者有什么区别和联系?
- 进程和线程有什么区别
- 进程和线程有什么区别收藏
- 进程和线程有什么区别?
- 进程和线程有什么区别
- 进程和线程有什么区别?
- 进程和线程有什么区别?
- 进程和线程有什么区别
- 进程和线程有什么区别
- 进程和线程有什么区别
- 线程和进程有什么区别?
- iOS(5)线程是什么?进程是什么?二者有什么区别和联系?
- 进程和线程有什么区别?什么是多线程?
- 进程和线程的联系和区别。
- 线程和进程的联系和区别
- 进程和线程的联系和区别
- ios面试题,各大企业常见的ios面试题之一
- 学习日记5
- poj 2454 随机
- 【洛谷1801】黑匣子
- Kaggle竞赛 —— 泰坦尼克号(Titanic)
- 进程和线程有什么联系和区别?
- SO_REUSEADDR, SO_RCVBUF, SO_SNDBUF 简单用法
- IP地址,子网掩码,默认网关,DNS服务器是什么意思?
- 如何快速阅读——《认知篇》
- lamdba表达式学习
- Laminated Composite Theoretical Principle
- java后缀表达式实现表达式求值
- vijos 1283 佳佳的魔杖
- Mybatis中service层分页是如何实现的?