是否有复杂的Java WorkQueue API?

whi*_*rra 6 java android scheduled-tasks task-queue android-asynctask

我正在寻找一个提供以下功能的WorkQueue API:

  • java.util.Queue 兼容
  • offer(可选)Set-semantic
  • 单批处理
  • 并发(当然)
  • 调度
  • 不同的处理政策
    • 等到下一次计划执行
    • 预处理,如果满足批量大小
    • 延迟处理(队列中的最短时间,在处理之前)
  • 持久性(可选)

jdk中有很多有趣的实现,例如java.util.DelayQueue我可以使用它.我只是想确保我不重新发明轮子.

and*_*soj 2

您还在寻找接受的答案吗?

java.util.concurrent我认为使用的执行器框架可以最好地满足您的需求。查看 API(这是一个好的开始)。有一个出色的支持社区,您可以在并发兴趣网站上找到它。如果您对死树感兴趣,Java Concurrency in Practice (JCiP)提供了一个极好的资源。

执行器框架允许您创建任务(以 Runnables 或 Callables 的形式),提供多种用于同步任务或以其他方式对任务进行排序的方案。

最后,新兴的 ForkJoin (FJ) 基础设施非常有用,可能会满足您的需求。API 在这里,一篇好论文在这里,还有一篇介绍性文章在这里

希望这可以帮助。

日本航空协会