测试Thread中的常用方法
*1.start():启动当前线程,调用当前线程的run()方法
- 2.run():通常需要重写Thread类中的此法,将要创建的线程要执行的操作声明在此方法中
- 3.currentThread():静态方法,返回执行当前代码的线程
- 4.getName():获取当前线程的名字
- 5.setName():设置当前线程的名字
- 6.yield():释放当前cpu的执行权
*7.join():在线程a中调用线程b的join(),此时线程a就进入阻塞状态,直到线程b完全执行完以后,线程a才结束阻 塞状态
*8.stop():已过时,当执行此方法时,强制结束当前线程
*9.sleep(long millitime):让当前程序”睡眠“指定的milliTime毫秒的时间,当前线程是阻塞状态
*10.isAlive():判断当前线程是否存活
代码实现即详解
class test extends Thread{//继承Thread类
@Override
public void run() {//重写Thread类中的run()方法
for(int i=0;i<10;i++) {//输出0到9
System.out.println(test.currentThread().getName()+i);//输出线程名字加上i的值
if(i==9) {
System.out.println(this.isAlive());//判断线程是否还存活
}
}
}
}
class task extends Thread{
public void run() {
for(int i=10;i<20;i++) {
System.out.println(Thread.currentThread().getName()+i);
}
}
}
public class FuntionTest {
public static void main(String[] args) throws InterruptedException {
test mt=new test();
task ts=new task();
mt.setName("线程一:");//setName()方法要使用在start()方法之前
ts.setName("线程二:");
mt.start();
ts.join();
ts.start();
System.out.println(mt.isAlive());
}
}