java多线程问题,求解答!
public static void main(String[] args) {
System.out.println(Main: start);
System.out.println(Main: end);
new Thread(() -> {
System.out.println(Thread: start);
}).start();
}
这段代码的执行结果是只有一种情况,还是有两种情况?
如果有两种情况的话,可是子线程的启动一定发生在Main: end之后吧?,按道理不可能会出现结果2
结果1:
Main: start
Main: end
Thread: start
结果2:
Main: start
Thread: start
Main: end
System.out.println(Main: start);
System.out.println(Main: end);
new Thread(() -> {
System.out.println(Thread: start);
}).start();
}
这段代码的执行结果是只有一种情况,还是有两种情况?
如果有两种情况的话,可是子线程的启动一定发生在Main: end之后吧?,按道理不可能会出现结果2
结果1:
Main: start
Main: end
Thread: start
结果2:
Main: start
Thread: start
Main: end
全部评论
是可以出现在main end的吧,如果只有守护线程在运行的话那会直接关闭守护线程。如果是一个正在运行的子线程,程序会一直等子线程运行完。
相关推荐
03-19 20:44
武汉大学 数据分析师 点赞 评论 收藏
分享
点赞 评论 收藏
分享
03-22 08:30
门头沟学院 图像识别 点赞 评论 收藏
分享