进程和线程的区别
2016-05-09 21:07
429 查看
1、进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位.
线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.
2、一个应用程序至少有一个进程,一个进程至少有一个线程。
3、进程有独立的地址空间;线程有自己的堆栈和局部变量,但没有独立的地址空间。
(1)多进程的程序比多线程的程序健壮:一个进程崩溃后,在保护模式下不会对其他进程产生影响;而线程只是一个进程中的不同执行路径,一个线程死掉等于整个进程死掉。
(2)在进程切换时,耗费资源较多,效率要差一些。但对于一些要求同时进行并且又要共享某些变量的并发操作,只能用线程,不能用进程。
4、线程的划分尺度小于进程,使得多线程程序的并发性高。
5、进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。
线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.
2、一个应用程序至少有一个进程,一个进程至少有一个线程。
3、进程有独立的地址空间;线程有自己的堆栈和局部变量,但没有独立的地址空间。
(1)多进程的程序比多线程的程序健壮:一个进程崩溃后,在保护模式下不会对其他进程产生影响;而线程只是一个进程中的不同执行路径,一个线程死掉等于整个进程死掉。
(2)在进程切换时,耗费资源较多,效率要差一些。但对于一些要求同时进行并且又要共享某些变量的并发操作,只能用线程,不能用进程。
4、线程的划分尺度小于进程,使得多线程程序的并发性高。
5、进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。
相关文章推荐
- Mysql查询优化
- POJ 1163 The Triangle 【水题】
- Go语言学习(十一)面向对象编程-类型系统
- 第一章 JAVA入门(导出参数之DumpArgs类)
- php 数组
- uva - Digit Counting
- (2016春) 作业8:单元测试练习(个人练习)
- Python----文件操作
- linux下常用命令
- 【NBUToj】1667 - Hkhv Loves Sequences(模拟,严格递增子串)
- 对话框程序:模式和非模式
- common lisp 下载设置入门
- poj2773 Happy 2006(二分+容斥)
- Java核心技术(五) —— 泛型程序设计(2)
- 2015百度之星之-IP聚合
- 第一章 JAVA入门(Main函数简介续)
- Android-UI 分辨率适配相关/dp/sp
- GeekBand c++學習筆記(friend的一點體悟)
- JS综合学习教程<一>
- Android Dev Intro - An OpenGL ES renderer based on the GLSurfaceView rendering framework