一,线程的概念
1,程序:Program,是一个指令的集合
2,进程:Process,(正在执行中的程序)是一个静态的概念
进程是程序的一次静态态执行过程, 占用特定的地址空间.
每个进程都是独立的,由3部分组成cpu,data,code
缺点:内存的浪费,cpu的负担
3,线程:是进程中一个“单一的连续控制流程”(a singlesThread,equential flow of control)/执行路径
线程又被称为轻量级进程(lightweight process)。
Threads run at the sametime,independentlyof one another
一个进程可拥有多个并行的(concurrent)线程
一个进程中的线程共享相同的内存单元/内存地址空间可以访问相同的变量和对象,而且它们从同一堆中分配对象通信、数据交换、同步操作
由亍线程间的通信是在同一地址空间上迚行的,所以丌需要额外的通信机制,这就使得通信更简便而且信息传递的速度也更快。
二,进程与线程
1,一个进程中至少有一个线程
三,Javac不java
1,Java虚拟机启动的时候会有一个进程java.exe,该迚程中至少有一个线程,在负责java程序的执行。而且这个线程运行的代码存在于main方法中,该线程称之为主线程。
2,一个进程中的线程共享代码和数据空间
3,线程结束,进程未毕结束,但进程结束,线程一定结束。
4,进程中包含线程,线程是进程的一部分
四,线程与进程的区别