//isAlive() 判断线程是否存活
public class Mythread7 extends Thread{
@Override
public void run() {
super.run();
System.out.println("run="+this.isAlive());//线程是否存活
}
}
class Run{
public static void main(String[] args) {
Mythread7 mythread7=new Mythread7();
System.out.println("begin =="+mythread7.isAlive());
mythread7.start();
System.out.println("begin =="+mythread7.isAlive());
}
}
//方法 isAlive()的作用是测试线程是否处于活动状态。
//即线程已经启动且尚未终止。
//如果线程处于正在运行或准备开始的状态就认为线程是存活的
//虽然说出的是True 但此值是不确定的,输出true是因为mythread7线程还未执行完
//如果等待1s中可能就执行完了
class CountOperate1 extends Thread{
CountOperate1(){
System.out.println("CountOperte-begin");
System.out.println("Thread.currentThread().getName()="+this.currentThread().getName());
System.out.println("Thread.currentThread().isAlive()="+this.currentThread().isAlive());
System.out.println("this.getName()="+this.getName()); //这个name如果不设置默认Thread-0
System.out.println("this.isAlive()="+this.isAlive()); //这个name如果不设置默认Thread-0
System.out.println("CountOperte-end");
}
@Override
public void run() {
super.run();
System.out.println("run-begin");
//当前线程
System.out.println("Thread.currentThread().getName()="+this.currentThread().getName());
System.out.println("Thread.currentThread().isAlive()="+this.currentThread().isAlive());
//当前类
System.out.println("this.getName()="+this.getName()); //这个name如果不设置默认Thread-0
System.out.println("this.isAlive()="+this.isAlive()); //当前类
System.out.println("run-end");
}
}
class Run1{
public static void main(String[] args) {
CountOperate1 countOperate1=new CountOperate1();
System.out.println("main begin t1 isAlive="+countOperate1.isAlive());
countOperate1.setName("A");
countOperate1.start();
System.out.println("main end t1 isAlive="+countOperate1.isAlive());
}
}
java多线程30-33(isAlive() 判断线程是否存活)
最新推荐文章于 2022-09-11 19:15:12 发布