线程和进程的区别

来源:互联网 发布:震楼神器 淘宝 编辑:程序博客网 时间:2024/06/06 16:52

进程和线程的简单定义:

进程:程序的一次执行。进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。

线程:CPU的基本调度单位。线程是CPU调度和分派的基本单位,是比进程更小的能独立运行的基本单位。与同属一个进程的其他的线程共享进程所拥有的全部资源。

进程和线程的主要差别在于它们是不同的操作系统资源管理方式。(注意:它们都是操作系统的资源管理方式哦~)


进程的内存空间是天然独立的,线程的内存空间是天然共享的(线程有自己的堆栈和局部变量),所以进程通信/线程同步是系统编程的重要内容。


一个进程在崩溃后,在保护模式下不会对其他进程产生影响。而一个线程死掉就等于整个进程死掉。所以多进程的程序比多线程的程序健壮,但是进程的切换比较耗费资源。对于一些要求同时进行并且要共享某些变量的并发操作,只能用线程不能用进程。