进程、线程是什么?它们的区别
< 返回列表时间: 2020-07-17来源:OSCHINA
进程:
程序并不能单独运行,必须装载到内存中,系统为其分配资源后才能执行,而这种执行的程序就叫做进程。 进程也是系统资源分配的基本单位 。
线程:
线程是 CPU分配和调度 的基本单位,比进程更小的能独立运行的基本单位,一个进程中可以有多个线程,它们可以并发执行,共享进程中的资源。
区别: 进程和程序:
程序是指令的集合,它是进程运行的 静态描述文本 ,而进程是程序的一次执行过程,是 动态 的。 进程和线程 :
1.资源:
线程基本上不拥有系统资源,只有一点运行时必不可少的资源(如程序计数器、栈),但可以与同一进程中的其他线程共享进程的资源。
2.崩溃后的影响:
进程拥有独立的地址空间,当一个进程崩溃后不会对其他进程造成影响;而当一个线程挂起后,由于它没有独立地址空间,整个进程可能会一起挂起。
3.开销:
每次创建或销毁进程,系统都要分配或回收资源,开销远大于创建或销毁线程的开销。
进程的缺点:(有了进程为啥还要线程?)
1.进程同一时间只能做一件事,如果想要并行是不行的;
2.进程一旦被阻塞,整个进程都会挂起
热门排行