记录一下个人见解:
一、进程和线程
1.进程:正在运行的程序在内存所开辟的空间,也就是该程序所占的内存空间。
2.线程:在进程(所开辟的内存空间)中代码执行的控制单元,可以说是程序的执行路径。
二、并发和并行
在网上看发现很多都提到CPU的多核,个人认为在没有多核之前,并发和并行的定义就已经存在了,所以在考虑基本定义的时候还是应该抛掉多核的问题。
1.并行:指在理论上,同一时刻执行多个任务。
2.并发:在一个时间片段执行多个任务。在实际情况下,CPU是在多个线程之间不断进行切换的,所以做不到同一时刻,只是切换的速度过快,感觉像是同一时刻实现了执行多个任务。