线程是进程的一个实体,线程本身是不会独立存在的。
进程是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位
线程则是进程的一个执行路径
一个线程中至少有一个线程,进程中的多个线程共享进程的资源
操作系统在分配资源时是把资源分配给进程,但是CPU资源比较特殊,它是被分配到线程的,因为真正要占用CPU运行的是线程,所以也说线程是CPU分配的基本单位。
在java中,启动main函数时其实就启动了一个JVM的进程
一个进程中有多个线程,多个线程共享进程的堆和方法区资源
但是每个线程都有自己的程序计数器和栈区域。