-
进程是系统分配资源的最小单位,线程是系统调度的最小单位.
-
多线程的优势:在一些场合下可以提高程序的整体运行效率
-
创建方法
继承Thread类 :
class MyThread extends Thread { }
实现Runnable:class MyRunnable implements Runnable{}
-
Thread的常见构造方法
-
Thread的常见属性:
-
Thread类的静态方法,代码行在哪个线程中,就获取哪个线 程的属性
-
start和**run()**方法的区别:start启动线程,**run()**直接调用方法
-
java进程的退出:
只要有一个守护线程没被销毁,进程就不会退出
设置守护线程的方法:
Thread t=new Thread();
t.setDaemon(true);
- 线程让步:
Thread.yield();
线程由运行态—>就绪态
- 线程等待
- 线程中断:不是真的中断,是告诉线程要中断,由它自己决定是否中断
-synchronized 关键字:保证原子性,可见性,有序性
synchronized加锁操作的关键点:
synchronized的有序性:指线程之间运行同步代码块是有序执行的
- volatile关键字:保证可见性,有序性(禁止指令重排序和建立内存屏障)