在生产者 - 消费者问题中,我想使用LinkedBlockingQueue
作为共享缓冲区。BlockingQueue有最大阻塞时间
生产者线程使用put()
方法在队列上放置一个元素,使用者线程使用take()
方法消耗队列中的元素。
我的问题是:说如果队列是空的,并且消费者线程调用take()
方法,我知道线程被阻塞,直到生产者将一个元素放到队列中。但有没有像最大阻滞持续时间?我可以安全地假设消费者线程将被阻止,直到拨打put()
?
我听到有人说永远没有像块一样的东西。这是真的吗?