并发和并行的区别:
先解释一下并发和并行:
并发:cpu具有处理多个任务的能力
并行:cpu具有同时处理多个任务的能力
举个栗子,将一个人比喻为一个cpu:
吃饭和看电视是可以同时进行的,这就叫做并行
吃饭和打电话,一个人在吃饭,这时他的电话响了,然后他要去接电话,接完电话然后继续吃饭这就是并发
进程和线程的区别:
-
进程:系统进行资源分配和调度的基本单位,是操作系统结构的基础;狭义上讲,进程是正在运行的程序的实例;广义上讲,进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动
-
线程: 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。线程是进程中的一个分支,为单独完成程序中的某一项或一组功能而存在。线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源。
-
一个程序至少有一个进程,一个进程至少有一个线程
网友评论