错误消息为java.lang.IllegalThreadStateException
(在timeOutControl.start()
行)。可能是什么原因?
TimeOutControl timeOutControl = new TimeOutControl();
//...
timeOutControl.start();
public class TimeOutControl extends Thread {
public void run()
{
long start = System.currentTimeMillis();
while (CVRPTW.DO_IT) {
if (System.currentTimeMillis() - start > CVRPTW.maxruntime) {
CVRPTW.DO_IT = false;
break;
}
try {
sleep(10000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
答案 0 :(得分:3)
抛出: IllegalThreadStateException - 如果线程已经启动。
所以答案是你试图两次启动同一个线程。如果必须这样做,则每次要启动时都构造一个新的TimeOutControl实例。