程序是含有指令和数据的文件---静态的代码--存储在磁盘或者其他
进程是程序的一次执行的过程-创建-运行-消亡
线程是进程划分更小的运行单位
进程互相独立-线程不独立
线程的状态:
初始状态-NEW,构建但是没有启动
运行状态-RUNNABLE --就绪READY-RUNNING-运行中
阻塞状态-BLOCKED-线程被锁阻塞
等待状态-WAITING-等待通知或者中断
超时等待状态(TIME_WAITING)-不同于等待状态,可以在指定的时间自行返回
终止状态-TERMINATED-当前线程已经执行完毕
线程-轻量级进程-程序执行的最小单位
可以多并发高效-但是
内存泄漏-上下文切换-死锁-
synchronized
解决多个线程之间的同步性-保证任意时刻只有一个线程执行
volatile
变量在多线程之间的可见性
可以直接在主内存中进行读写操作
多线程相关的方法
Thread类
run start
sleep
join
yield
wait
线程池