【发布时间】:2020-04-28 19:02:59
【问题描述】:
如果我在 Thread 对象上使用 start() 并且 run() 方法返回,是否可以再次调用 start()?
例如,
MyThread myThread = new MyThread();
myThread.start();
// run method executes and returns in 2 seconds
// sleep for 5 seconds to make sure the thread has died
myThread.start();
我只是想知道,因为我的代码抛出了 IllegalThreadStateExceptions,所以想知道是不是因为您不能执行上述操作。
【问题讨论】:
-
@Stephen 我确实查看了 javadoc,但只查看了 start() 方法,这听起来不太清楚。
-
嗯?关于名为
start()的方法上的句子“多次启动线程永远不合法” 有什么不清楚的地方? -
好奇:你想做什么?我怀疑使用预定执行程序 (
ScheduledExecutorService) 最接近您想要实现的目标,但请随时填写。
标签: java multithreading