【发布时间】:2016-08-14 12:39:24
【问题描述】:
我将在一个模拟停车场的程序中使用 Collections 接口中的 DelayQueue。我想知道在没有元素过期的情况下是否有多个对队列的 take 方法调用,最后一个 take 调用是返回首先出现的元素,还是返回在先前调用的 take 之后出现的元素?
【问题讨论】:
-
take将等待第一个过期元素然后返回它,你不能在同一个线程中有多个take调用等待。如果你有几个接一个接一个的调用,那么它们将按过期顺序返回元素, -
好的,是第一个还是最后一个接收下一个元素的 take 调用?
-
第一次调用会返回最先过期的元素。下一秒,以此类推。
-
是否也需要打开一个新线程来等待下一个过期元素?还是暂停主线程?
-
它暂停调用它的线程。
标签: java collections queue