我们使用Java计时器(Java1.7)来安排一些打印工作。无论DST如何,我们都希望作业在每天的特定时间打印。目前,如果我们将作业设置为打印在4:00 AM,期间为24小时,它将正确打印直到DST日。在秋季夏令时,印刷时间是凌晨3点,而不是4点。我怎样才能解决这个问题?我们希望它在一年中的每一天的特定时间打印。
实现你的时间任务
class Task extends TimerTask {
@Override
public void run() {
if (Calendar.getInstance().get(Calendar.HOUR_OF_DAY) == 4) {
System.out.println(new Date());
}
}
}
并安排它在每个小时的顶部运行。任务将决定当前区域的哪个小时是凌晨4点
你可以使用java。util。Calendar
获取时间(日期
),因为Calendar
类已经进行了DST调整。查看每日迭代器的工作方式。类
在清单4中实现。DailyIterator类。
WorkManager是一个库,用于对满足其约束后保证执行的工作进行排队。 因此,在查看了Constraints类之后,我还没有找到任何函数来为工作添加时间约束。例如,我希望在早上8:00AM开始执行一个工作(该工作可以是OneTimeWorkRequest或PerioadWorkRequest两种类型中的任何一种)。如何添加约束以使用WorkManager调度此工作。
如何: 在几个月的特定日期安排工作? 大约有10天。 其次是有一个模拟cron的工具,这样你就可以传递日期/时间,工具会告诉你是否触发了cron触发器
null null 线程组用于登录事务,有57个示例。当我点击Run时,整个线程不是运行1800秒,而是运行84秒 运行前有什么需要检查或配置的吗?
问题内容: 我的Java Scheduler有一个问题,我的实际需要是我必须在特定时间启动我的进程,并且我将在特定时间停止,我可以在特定时间启动我的进程,但是我不能在特定时间停止我的进程,如何指定进程在调度程序中运行多长时间(在这里我不会放),任何人对此都有建议。 问题答案: 您可以使用带有2个计划的计划,一个计划运行任务,另一个计划终止任务-参见下面的简化示例:
问题内容: 从我可以看到,Gearman不支持计划的作业或延迟的作业。我当时想也许可以先将计划的作业排入队列,然后在该时间段到期后将其添加到Gearman队列中。 任务是持久的,因为它们以文件形式写入服务器的假脱机目录中的目录。因此,唯一的瓶颈可能是将任务添加到Gearman队列的简单脚本,因为它无法在服务器之间分布。将其传递给Gearman来处理实际的工作意味着我可以进行适当的工作记录等。 这是
现在我每天下午3点运行我的cron作业 但是我想一天运行两次cron作业。上午10点30分和下午2点30分 我相信此命令将在上午 10:30 运行。我应该如何在下午 2:30 运行它?