我们可以在Java中启动一个线程两次吗
不,一旦您开始 线,无法再次启动。如果您尝试再次启动线程,它将抛出 IllegalThreadStateException
让我们借助示例来理解:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
包 组织.Arpit.爪哇2blog; 类 第一线程 延伸 线 { 上市 虚空 跑() { 系统.出.打印(“线程正在运行”); } } 上市 类 StartThreadAgainMain { 上市 静态的 虚空 主要(串[] args) { 第一线程 英尺 = 新 第一线程(); 英尺 .开始(); 英尺 .开始(); } } |
在程序上方运行时,将获得以下输出:
爪哇.lang.IllegalThreadStateException
在java.lang.Thread.start(Thread.java:705)
在org.arpit.java2blog.StartThreadAgainMain.main(StartThreadAgainMain.java:16)
如您所见,当我们两次启动线程时,它引发了IllegalThreadStateException。
如果尝试再次启动线程,它将抛出IllegalThreadStateException
你可以经历 面向初学者和经验丰富的Java核心面试问题 有关更多此类问题。