关于sleep方法的问题,我不太明白sleep到底休眠的时哪个线程
public class Threadone implements Runnable{
@Override
public void run() {
for(int i = 0;i<10;i++) {
System.out.println(Thread.currentThread().getName()+i);
}
}
public static void main(String[] args) throws InterruptedException {
Threadone t = new Threadone();
Thread t1 = new Thread(t,"线程f");
t1.sleep(10000);
t1.start();
for(int i=0;i<10;i++) {
System.out.println("主线程运行"+i);
}
}
}
老师您好,请问这个时候的sleep方法休眠的是主线程么
正在回答
你好!sleep()方法是静态方法,它会让当前正在执行的线程休眠。因为是静态方法,所以使用类名Thread去调用该方法即可,哪个正在执行的线程执行到这个方法,那么就是哪个线程休眠。
从你的代码看,是主线程休眠了,因为另一个线程还没有启动,你可以在sleep()方法调用前打印输出正在运行的线程名称看看,输出结果是main,然后就开始休眠。
祝学习愉快!
- 参与学习 人
- 提交作业 7317 份
- 解答问题 14452 个
想要入门学编程?多年一直活跃在编程语言排行版前列的Java是一个很好的选择。本路径将从Java基础语法、面向对象、常用工具类三部分,为你开启软件开发的大门!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星