有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

多线程在java中让线程等待是否不好?

我有一个线程,基本上包含

while(true) {
  current = BlockingQueue.take();
  results = queryDatabaseWith(current);
  AtomicReference.set( results );
}

实际上,队列中只会放一些东西,但重要的是,当事情发生时,DB查询会以正确的顺序发生。原子引用很好,因为我只关心最后一个DB查询的结果

把这个放在一个线程上,基本上要等一整天,这是一种不好的做法吗


共 (1) 个答案

  1. # 1 楼答案

    不,一般来说,有等待线程并不坏,这是常见的做法,通常是最好的解决方案

    由于答案非常简短,请给出一个简短的建议: <强>如果您的线程不必立即反应< /强>,您可以考虑将^ {CD1}}添加到无限的等待循环中,这取决于它运行的系统可以节省一些不必要的CPU使用率。{a1}