gpt4 book ai didi

java - 以固定速率安排 Callable

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:21:00 25 4
gpt4 key购买 nike

我有一个任务要以固定速率运行。但是,我还需要每次执行后的任务结果。这是我尝试过的:

任务

class ScheduledWork implements Callable<String>
{
public String call()
{
//do the task and return the result as a String
}
}

不,我尝试使用 ScheduledExecutorService 来安排它。事实证明,您无法以固定速率安排 Callable,只能安排 Runnable

请指教。

最佳答案

使用 producer/consumer pattern : 有 Runnable put结果在 BlockingQueue 上.有另一个线程take()从队列中。

Take 是一个阻塞调用(即仅在队列中有内容时返回),因此您会在结果可用时立即获得结果。

您可以将其与 hollywood pattern 结合使用为等待线程提供回调,以便您的代码在可用时被调用。

关于java - 以固定速率安排 Callable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7331754/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com