JAVA基础——多线程
JAVA基础————多线程
多线程的概述
- 进程:当前正在运行的程序,一个应用程序在内存中的执行区域
- 线程:进程中的一个执行控制单元,执行路径
(一个进程可以有一个线程,也可以有多个线程) - 单线程特点:安全性高,但是效率低多线程:安全性低,效率高
- 多线程案例: 360 ,迅雷等
多线程的实现方式
- 方式1:一种方法是将类声明为Thread的子类。该子类应重写Thread类的run方法。 Thread
String getName ( ) 返回该线程的名称。
void setName(String name) 改变线程名称,使之与参数name相同。
(CPU执行程序的随机性) - 方式2:创建线程的另-种方法是声明实现Rumnable 接口的类。该类然后实现run方法。然后可以分配该类的实例,在创建Thread 时作为一一个参数来传递并启动。
Thread(Runnable target)
static Thread currentThread(); 返回当前线程对象。 - 切记:主方法是单线程的
同步方法
使用关键字synchronized修饰的方法,一旦被-个线程访问,则整个方法全部锁住,其他线程则无法访问
synchronized
注意:
非静态同步方法的锁对象是this
静态的同步方法的锁对象是当前类的字节码对象