gpt4 book ai didi

java线程问题,正确的方法吗?

转载 作者:行者123 更新时间:2023-12-02 07:30:59 24 4
gpt4 key购买 nike

我正在创建一个java服务,它将在后台持续运行,该服务的工作是在特定日期创建表的副本。确切地说,我从某个表中读取数据,如果表中的 record_date 与当前日期匹配,我需要创建表副本。然后该服务应该 hibernate 直到下一个运行日期。下一个运行日期也可以通过查看表中的记录来确定。

目前,我的做法是创建一个在 while(true) 循环中运行的线程。当线程完成执行任务(即创建表副本)时,我使用 Thread.sleep() 将其置于 sleep 状态,直到下次需要运行为止。线程 hibernate 的毫秒数,我通过当前日期(线程执行任务的日期)和下一个运行日期之间的差来计算。

这是正确的方法吗?在这个特定场景中使用 thread.sleep() 是否正确?我这样说是因为线程的下一次运行日期可能是三个月甚至一年后。如果我在这里不太清楚,请告诉我。

最佳答案

剖析这两个操作怎么样?

  1. 编写一个 Java 作业,在调用时检查表中的日期并创建副本。
  2. 安排 Java 作业以您希望的方式运行。

由于我们使用 UNIX,因此 cron 可以帮助我们完成此类任务。

关于java线程问题,正确的方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12916413/

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