gpt4 book ai didi

Java ScheduledThreadPool 多线程在一段时间后停止

转载 作者:行者123 更新时间:2023-11-29 03:56:29 24 4
gpt4 key购买 nike

我正在开发一个 J2SE 应用程序,用于同步存储在不同服务器上的四个数据库中的 184 辆汽车的 GPS 信息。我为每辆车创建一个线程并存储在 ScheduledThreadPool 中

    ScheduledExecutorService executor = Executors.newScheduledThreadPool(20);

for (int i = 0; i < cars.size(); i++) {
Car vec_temp = cars.get(i);
SyncThread carThread = new SyncThread(q, vec_temp, reintentos);
long sleep = carThread.calculateVehicleDelay();
executor.scheduleAtFixedRate(hilo, 0, sleep, MILLISECONDS);
}

纬度和经度信息由 SocketServer 在 XML 数据中检索,因此在 SyncThread 类中我实例化一个 Socket 并请求信息并关闭该连接,每 15 分钟进行一次...

由于某种原因,该应用程序开始运行良好,但有时会停止运行,没有异常......

jar 作为 Windows 服务运行。

最佳答案

根据API ,

If any execution of the task encounters an exception, subsequent executions are suppressed.

话虽如此,如果您将代码发布在 SyncThread 中就更好了,否则它几乎无法帮助您。另外,hilo 是什么?为什么要安排执行 hilo,而不是 carThread

关于Java ScheduledThreadPool 多线程在一段时间后停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6158369/

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