【发布时间】:2013-10-21 22:09:00
【问题描述】:
我正在做java过去的试卷,我遇到了以下让我感到困惑的问题。
下列哪项是正确的? (选择所有适用的。)
A.当一个应用程序开始运行时,有一个守护线程,它的工作是执行 main()。
B.当一个应用程序开始运行时,有一个非守护线程,其工作是执行 main()。
C.由守护线程创建的线程最初也是守护线程。
D.由非守护线程创建的线程最初也是非守护线程。
关键答案是 B,C,D,谁能告诉我为什么 B,C 是正确的?非常感谢。
【问题讨论】:
-
你一直在问这些问题。在问答案之前,你有什么可以先看的参考资料吗?你的笔记呢?
-
有一些参考资料,但我仍然对此感到困惑:它指出:A 是错误的,因为 main() 是由非守护线程执行的。 B 是正确的,因为守护线程用于 JVM 的基础设施。非守护线程适用于程序员。 JVM 最初创建一个非守护线程来运行 main()。 C 和 D 都是正确的,因为线程的守护进程状态与其创建线程的状态相同。
-
@bean 请参考java线程文档-docs.oracle.com/javase/7/docs/api/java/lang/Thread.html
标签: java multithreading daemon