多线程在java中让线程等待是否不好?
我有一个线程,基本上包含
while(true) {
current = BlockingQueue.take();
results = queryDatabaseWith(current);
AtomicReference.set( results );
}
实际上,队列中只会放一些东西,但重要的是,当事情发生时,DB查询会以正确的顺序发生。原子引用很好,因为我只关心最后一个DB查询的结果
把这个放在一个线程上,基本上要等一整天,这是一种不好的做法吗
# 1 楼答案
不,一般来说,有等待线程并不坏,这是常见的做法,通常是最好的解决方案
由于答案非常简短,请给出一个简短的建议: <强>如果您的线程不必立即反应< /强>,您可以考虑将^ {CD1}}添加到无限的等待循环中,这取决于它运行的系统可以节省一些不必要的CPU使用率。{a1}