1
我有一个消费者线程,采用LinkedBlockingQueue
中的元素,并在空闲时手动进行休眠。我使用peek()
来查看队列是否为空,因为在发送线程进入睡眠之前我必须做些什么,并且我使用queue.wait()
来做到这一点。LinkedBlockingQueue上的add()是否通知等待线程?
所以,当我在另一个线程和add()
队列的元素是,是否自动通知,这是wait()
荷兰国际集团在队列中的线程?
它实际上在内部具有两个锁,一个处理队列空情况的通知,另一个处理队列满的情况。他们是'私人的' - 有很好的理由 - 所以使用API是为了使用它。 – 2010-06-07 00:08:55