1:程序:是一个静态的概念。可以理解为一个计算机指令的集合。
2:进程:程序的一次执行就是一个进程。会向cpu 申请相应的资源,申请内存地址。
每个进程都是独立的。多个进程并发执行。(并发只是我们宏观上的感受,微观上是线性的。)
进程是向cpu申请资源的基本单位。
3:线程:进程中(线程依赖于进程)一个完整的执行路径。
线程一般可以称为轻量级的进程。
线程是生存在进程中的。如果进程结束了,进程中的所有的线程也就结束了。
一个进程至少有一个线程。这个线程一般称之为主线程。
同一个进程的多个线程共享该进程的资源。
java程序启动的时候,会由jvm 启动一个主线程 –名字是main。我们之前写的所有的程序都是单线程的。
cpu 的时间片分配是分配给进程中的线程。线程是cpu进行调度执行的基本单位。