您将如何顺序执行三个线程?例如。线程 1、线程 2、线程 3。无法将一个线程的引用传递给另一个线程并从 run() 方法调用。
所以代码应该是这样的:
Thread1.start();
Thread2.start();
Thread3.start();
输出应该是
Printing Thread1
Printing Thread2
Printing Thread3
这可以通过使用 ThreadPoolExecutor 和使用阻塞队列来实现,但即使这样也不是一个可接受的答案。
最佳答案
你可以使用 Executors.newSingleThreadExecutor() ,但严格来说,这只会启动一个 Thread
,因此可能不是预期的解决方案。
仅使用 Thread
类的最简单的解决方案:
Thread1.start();
Thread1.join();
Thread2.start();
Thread2.join();
Thread3.start();
Thread3.join();
(为清楚起见,我省略了异常处理,Thread.join()
可以抛出 InterruptedException
)
关于java - 顺序运行 Java 线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5461543/