2013-02-27 66 views
0

我想要一个预定的Runnable s的DelayQueue,其中每个Runnable s只应在预先指定的某个时间点之后运行。因此,线程可以继续从该队列中删除可运行的事件并处理事件的时间表。为什么没有良好的默认实现Delayed,也就是Runnable,对此?为什么没有默认的Java实现Delayed for DelayQueue?

Delayed这个看起来合理的唯一子接口是RunnableScheduledFuture,它有一大堆需要实现的随机事物。必须有一个更简单的方法来做到这一点,对吗?

+0

是不容易的IMPL一个自己? – irreputable 2013-02-27 01:09:44

+2

你可以简单地使用ScheduledExecutorService – irreputable 2013-02-27 01:10:48

+0

我总是搜索现有的实现之前,滚动我自己的。是的,我认为'ScheduledExecutorService'就是我一直在寻找的东西:)为什么你不把你的评论转换成答案? – 2013-02-27 01:13:56

回答

1

DelayQueue更多的是不被应用程序直接使用的基础结构类。

你可能最好使用ScheduledExecutorService的(内部使用DelayQueue的变体)

+0

太棒了,不知道我是如何忽略它的! :) – 2013-02-27 01:21:07

相关问题