方法名称 | 说明 |
---|---|
String getName() | 返回此线程的名称 |
void setName(String name) | 设置线程的名字 |
static Thread currentThread | 获取当前线程的对象 |
static void sleep(long time) | 让线程休眠指定的时间,单位为毫秒 |
setPriority(int newPriority) | 设置线程的优先级 |
final int getPriority | 获取线程的优先级 |
final void setDaemon(boolean on) | 设置为守护线程 |
public static void yield() | 出让线程/礼让线程 |
public static void join() | 插入线程/插队线程 |
成员方法的一些小细节
(1)getName()
如果没有设置线程名称 默认名字是Thread-X(X从0开始) 不断自增
默认名称
(2) setName()
如果我们要给线程设置名字,可以调用setName,也可以通过构造方法设置
(3) currentThread()
细节:当java虚拟机启动之后,会自动的启动多条线程
其中有一条线程就叫做main线程
他的作用就是去调用main方法 并执行里面的代码
在以前 我们所写的所以代码 都是允许在main线程中
(4)sleep()
哪条线程执行到sleep这个方法,哪个线程就会在这里停留相应的时间
方法的参数 就是代表睡眠的时间 单位是毫秒 (1秒=1000毫秒)
当时间到了之后 ,线程就会自动醒来 去执行下面相应的代码
理解线程的优先级前要先了解一下
线程的调度
(1)抢占式调度 随机性 java中采取第一这
(2)非抢占式调度 轮流
(5) setPriority 设置线程的优先级
默认是5
点进去Thread 可以看到有 最小是1 最大是10 默认是5 这就是线程的优先级
(6) getPriority 获取线程的优先级
(8) yield 出让线程 用的不多,了解
(9) join 插入线程