最近搜索
暂无搜索记录
热搜
JAVA
大数据
分布式
Python
人工智能
爬虫
WEB
JavaScript
认证
在main方法中写下面的代码:
我的问题是: 第五行代码, 主线程的状态为啥是 WAITING 状态?不应该是TIMED_WAITING状态吗?
您的课上说sleep和join方法,都是TIMED_WAITING状态
//6.2 join方法
Thread maint = Thread.currentThread();
Thread t7 = new Thread(
()->{
System.out.println("我是t7子线程..., 我强占cpu,主线程被进入阻塞状态, 等我执行完以后, 主线程被自动唤醒");
System.out.println("before 3s, t7="+maint.getState());//这里为啥是 WAITING 状态?不应该是TIMED_WAITING状态吗?
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
);
t7.start();
t7.join();//main主线程进入阻塞状态, t7子线程强占cpu时间片, 此时main线程的状态是TIMED_WAITING
System.out.println("after 3s, t7="+maint.getState());//RUNNABLE