方法 | 说明 |
---|---|
setPriority(int newPriority) | 设置线程的优先级 |
static void sleep(long milllis) | 线程休眠指定的时间(以毫秒为单位) |
void join() | 等待该线程终止 |
static void yield() | 礼让他人 |
void interrupt() | 强制中断线程(不推荐使用) |
boolean isAlive() | 测试线程是否处于活动状态 |
不推荐使用JDK提供的stop()、destroy()方法 (已过时,且不安全,详见https://www.jianshu.com/p/7686ac6b84f1)
推荐让线程自己停止
利用一个标志位,当标志位处于某种特定状态时,终止线程运行
示例
package com.pbx.lesson01;
/**
* @author BruceXu
* @date 2020/9/13
*/
public class ThreadStop implements Runnable {
private boolean flag = true;
public static void main(String[] args) {
ThreadStop myThread = new ThreadStop();
new Thread(myThread).start();
try {
Thread.sleep(5);
} catch (InterruptedException e) {
e.printStackTrace();
}
myThread.stop();
}
@Override
public void run() {
while (flag) {
System.out.println("线程正在运行中");
}
System.out.println("线程马上退出");
}
public void stop() {
this.flag = false;
}
}
原文:https://www.cnblogs.com/primabrucexu/p/13694058.html