【问题标题】:How to obtain references to Futures of a scheduledThreadPoolExecutor如何获取对已调度线程池执行器的 Futures 的引用
【发布时间】:2012-10-23 00:26:14
【问题描述】:

我有一个计划的执行器服务,我需要在计划任务后返回 Futures。 Javadoc 说调度任务后会返回一个 ScheduledFuture - 但是,我怎样才能获得尚未运行的任务的后续 Futures?

我的电话如下所示: exec.scheduleAtFixedRate(new Task(), 0, interval, TimeUnit.MINUTES);

确实提交并运行了新任务,但是我只有第一次调用的未来。这个 Future 是可重用的还是可重用的?

【问题讨论】:

    标签: java concurrency timeout executorservice executor


    【解决方案1】:

    所有处决都是同一个 Future。取消它会取消当前和所有未来的执行。

    【讨论】:

    • 很有趣,那么我如何知道一个执行是否已完成以及下一个何时开始?基本上如何有效地重用未来?
    • @pk11 - 你有什么具体的事情要确定吗? ScheduledFuture 上有一个getDelay 方法。
    • 更多,所以我对 ScheduledFuture 每次运行时返回的值感兴趣。
    • @pk11 - 重复任务的 Future 不会返回任何内容。
    猜你喜欢
    • 2018-07-28
    • 2019-02-19
    • 1970-01-01
    • 2018-12-11
    • 1970-01-01
    • 2014-08-27
    • 2017-12-29
    • 1970-01-01
    • 2021-04-11
    相关资源
    最近更新 更多