Thread.State
类定义了线程的几种状态对象被声明并创建时
,新生的线程对象处于新建状态
被start( )后
,将进入线程队列等待CPU时间片
,此时它已具备了运行的条件,只是没分配到CPU资源
当就绪的线程被调度并获得CPU资源时,便进入运行状态
,run( )方法定义了线程的操作和功能方法 | 说明 |
---|---|
setPriority(int newPriority) | 更改线程的优先级 |
static void sleep(long millis) | 在指定的毫秒内让正在执行的线程进入休眠状态 |
void join() | 等待该线程终止 |
static void yield() | 暂停正在执行的线程对象,并执行其他的线程 |
void interrupt() | 中断线程,别使用这个方法 |
boolean isAlive() | 测试线程是否处于活动状态 |
public class TestStop implements Runnable{
//1.设置一个标志位
boolean flag = true;
@Override
public void run() {
int i = 0;
while (flag){
System.out.println("run---thread"+i++);
}
}
//2.设置一个公开的方法停止线程,转换标志位
public void stop(){
this.flag = false;
}
public static void main(String[] args) {
TestStop testStop = new TestStop();
new Thread(testStop).start();
for (int i = 0; i < 500; i++) {
System.out.println("执行线程"+i);
if (i == 300){
//调用stop方法切换标志位,停止线程
testStop.stop();
System.out.println("线程该停止了=====================");
}
}
}
}
原文:https://www.cnblogs.com/saxonsong/p/14685256.html