六 线程基本信息:isAlive() 判断线程是否还“活”着,即线程是否还未终止
getPriority() 获得线程的优先级数据
setPriority() 设置线程的优先级数据
优先级:概率,不是绝对的优先级
MAX_PRIORITY 10
NOEM_PRIORITY 5(默认)
MIN_PRIORITY 1
setName() 给线程一个名字
getName() 获得线程的名字
currentThread() 取得当前正在运行的对象
package thread.info;
public class MyThread implements Runnable {
private boolean flag = true;
private int num = 0;
@Override
public void run() {
while (flag) {
System.out.println(Thread.currentThread().getName() + "-->" + num++);
}
}
public void stop() {
this.flag = !this.flag;
}
}
package thread.info;
/**
* 1 Thread.currentThread() 2 setName() 3 getName() 4 isAlive()
*
* @author Administrator
*
*/
public class InfoDemo1 {
public static void main(String[] args) throws InterruptedException {
MyThread it = new MyThread();
Thread proxy = new Thread(it, "挨踢");
proxy.setName("test");
System.out.println(proxy.getName());
System.out.println(Thread.currentThread().getName());// main线程
proxy.start();
System.out.println("启动后的状态" + proxy.isAlive());
Thread.sleep(200);
it.stop();
Thread.sleep(100);
System.out.println("停止后的状态" + proxy.isAlive());
}
}
package thread.info;
/**
* 优先级:概率,不是绝对的优先级
MAX_PRIORITY 10
NOEM_PRIORITY 5(默认)
MIN_PRIORITY 1
setPriority()
getPriority()
* @author Administrator
*
*/
public class infoDemo2 {
public static void main(String[] args) throws InterruptedException {
MyThread it1=new MyThread();
Thread p1=new Thread(it1,"挨踢1");
MyThread it2=new MyThread();
Thread p2=new Thread(it2,"挨踢2");
p1.setPriority(Thread.MIN_PRIORITY);//设置优先级
p2.setPriority(Thread.MAX_PRIORITY);//设置优先级
p1.start();
p2.start();
Thread.sleep(1000);
it1.stop();
it2.stop();
}
}