java - 错误 Java 异常 java.lang.IllegalThreadStateException

标签 java multithreading

在 Java 中,我收到此异常:

线程“main”中的异常 java.lang.IllegalThreadStateException

这是代码:

class Worker extends Thread
{
   public void run() {
   System.out.println("#");
 }
}

class Seconda extends Thread
{
   public void run() {
       System.out.println("*");
   }
}


public class First
{
   public static void main(String args[]) {
      int contatore=0;
      Worker prova = new Worker();
      Seconda prova2 = new Seconda();
      prova.start();
      prova2.start();
      for(;;) {
               if(!prova.isAlive()) { prova.start();
                                      contatore++;
                                    } 
           if(!prova2.isAlive()) { prova2.start();
                                   contatore++;
                                 }
           if(contatore==50) System.out.println(""); 
          }

   }
 }

异常是什么意思?

最佳答案

您正在尝试启动一个已经启动的线程。

您需要做的是在 for 循环内创建 prova 和 prova2?

public static void main(String args[]) {
  int contatore=0;
  //Worker prova = new Worker();
  //Seconda prova2 = new Seconda();
  //prova.start();
  //prova2.start();
  for(;;) {
     Worker prova = new Worker();
     Seconda prova2 = new Seconda();
     if(!prova.isAlive()) { 
        prova.start();
        contatore++;
     } 
     if(!prova2.isAlive()) { 
        prova2.start();
        contatore++;
     }
     if(contatore==50) System.out.println(""); 
     }
}

关于java - 错误 Java 异常 java.lang.IllegalThreadStateException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22759590/

相关文章:

Java Arrays.asList 不

java - 在 Linux 上执行此 Spring 应用程序(通过 Spring Integration FTP : MessagingException 在 FTP 服务器上上传文件)时出现问题

java 在 3D 空间中查找 block 与表面的交集

c++ - OpenMPI 上的线程应用程序仅在节点上使用 1 个内核

python - wx.ProgressDialog 在被销毁时导致段错误和/或 GTK_IS_WINDOW 失败

java - 周围的建议表现得很奇怪

java - 错误 : non-serializable attribute value into ViewMap

java - 从同步块(synchronized block)调用这个同步方法可以吗?

即使在启动调用之后,java线程也没有运行

multithreading - 我什么时候应该考虑更改线程优先级