gpt4 book ai didi

Java scheduleAtFixedRate 在 2 次后停止工作

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:28:31 25 4
gpt4 key购买 nike

我有这个代码:

    exec = Executors.newSingleThreadScheduledExecutor();
exec.scheduleAtFixedRate(new Runnable() {
@Override
public void run() {
System.err.println("Getting messages....");
getNewMessagesAndAddToTextArea();
}
}, 0, GET_MESSAGE_INTERVAL, TimeUnit.SECONDS);

exec 在我的类中声明为: 私有(private) ScheduledExecutorService 执行;

我收到了 2 次“正在接收消息...”消息,然后就停止了。我无法解释为什么。 GUI 仍在工作。那么这里发生了什么?

最佳答案

我怀疑 getNewMessagesAndAddToTextArea 抛出异常。

验证该想法的第一种方法是添加

System.err.println("Finished getting messages");

run 方法的末尾。如果(如我所料)您第二次没有看到,您应该考虑包括一个记录异常的 try/catch block 。对于未捕获的未检查异常,您需要考虑您想要做什么...

关于Java scheduleAtFixedRate 在 2 次后停止工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17032866/

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