我想问一下关于 Java 线程的基本问题。让我们考虑一个生产者-消费者场景。假设有一个生产者和 n 个消费者。消费者随机到达,一旦他们被服务,他们就会离开,这意味着每个消费者都在自己的线程上运行。我还应该为消费者使用永远运行的条件吗?
public class Consumer extends Thread {
public void run() {
while (true) {
}
}
}
这不会让线程永远运行吗?
最佳答案
我不会扩展 Thread,而是实现 Runnable。
如果你想让线程永远运行,我会让它永远循环。
一个常见的替代方法是使用
while(!Thread.currentThread().isInterrupted()) {
或
while(!Thread.interrupted()) {
关于Java - 基本多线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8056548/