以前对多线程这一块了解的很少,经历过这几个月的春招备战,面试后,感觉多线程这一块是很多面试官经常问的,可以说对于我们来说这一块也是重中之重呀。其实当你接触了他以后,感觉多线程这个东西还是挺有意思的。所以接下来我就把我所知道 的了解的东西分享给大家,希望对大家有所帮助。
sleep()方法在多线程中也是经常用到的一个方法。sleep()方法的作用是让当前正在执行的线程进入休眠(暂停执行)。请看下面的代码:
package com.test.obj.thread.test8;
/**
* @auther: sjg
* @date: 2018/6/6 11:17
* @description:
*/
public class MyThread extends Thread {
@Override
public void run() {
System.out.println("run threadName="+currentThread().getName());
}
}
package com.test.obj.thread.test8;
/**
* @auther: sjg
* @date: 2018/6/6 11:18
* @description:
*/
public class Run {
public static void main(String[] args) {
try {
MyThread myThread=new MyThread();
myThread.start();
Thread.sleep(10);//使当前正在执行的线程进入休眠状态
System.out.println("end......"+Thread.currentThread().getName());
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
上面两段代码创建了一个线程,然后在main方法里面进行了调用,输出的结果如下:
run threadName=Thread-0
end......main
可以看出sleep()方法是使当前正在运行的线程进入休眠状态,即执行main方法的那个线程(这里执行main方法 的那个线程的名字正好是main),千万别误认为是我们new的那个线程(即MyThread),那样就大错特错了。