在Java中可以启动线程两次吗
时间:2020-02-23 14:33:58 来源:igfitidea点击:
不行,一旦我们启动了一个线程,它就无法再次启动。
如果我们尝试再次启动线程,它将抛出 IllegalThreadStateException
让我们通过示例来理解:
package org.arpit.theitroad; class FirstThread extends Thread { public void run() { System.out.println("Thread is running"); } } public class StartThreadAgainMain { public static void main(String[] args) { FirstThread ft = new FirstThread(); ft.start(); ft.start(); } }
运行上面的程序时,我们将得到以下输出:
Thread is runningException in thread “main" java.lang.IllegalThreadStateException at java.lang.Thread.start(Thread.java:705) at org.arpit.theitroad.StartThreadAgainMain.main(StartThreadAgainMain.java:16)
可以看到,启动两次线程,将会报IllegalLthreadStateException异常。