Tag: scheduler

Quartz调度程序 – 之间的时间

我正在使用石英调度程序来安排工作。我有一个案例,我希望每天晚上(晚上9点)到第二天早上(06:00 AM)执行工作。我怎样才能实现这一点。目前我正在初始化像这样触发 Trigger trigger2 = newTrigger() .withIdentity(“trigger1”, “group1”) .startNow() .withSchedule(simpleSchedule() .withIntervalInSeconds(10) .repeatForever()) .build(); 我需要做些什么修改才能满足要求?

Akka调度程序()每次重复都会延迟

我有一个简单的调度程序,每1秒重复一次任务: Cancellable task = Akka.system().scheduler().schedule( Duration.create(0, TimeUnit.MILLISECONDS), Duration.create(1, TimeUnit.SECONDS), actor, new TickMsg(“Tick”, 0, 120) ); 不幸的是,每个传递都是迟到的ticker-duration收报器ticker-duration所以最终演员在100毫秒后正好收到TickMsg – 好的,这在文档中描述并且我很清楚: 它不会在确切的时间执行任务,但是在每个滴答声中,它将运行过期的所有内容。 我无法理解的是为什么每个传球都迟到了,事实上这意味着每次传球而不是1000毫秒需要1100毫秒。 在10次通过后的结果,我们有1秒的延迟,1分钟后6秒,1小时后6分钟等… 一些解决方案是将重复持续时间设置得稍短一些,因此在需要的时间点不会迟到,对于一个有效的示例,然后调度程序会根据需要重复执行任务: Cancellable task = Akka.system().scheduler().schedule( Duration.create(0, TimeUnit.MILLISECONDS), Duration.create((1000 – tickerDuration/2), TimeUnit.MILLISECONDS), actor, new TickMsg(“Tick”, 0, 120) ); 不幸的是,这种方式有点不舒服,容易忘记,有没有其他方法可以每隔x秒(或其他TimeUnit )重复任务而不将其转换为毫秒和缩短?

是否可以在Web应用程序中运行cron作业?

在java web应用程序(servlets / spring mvc)中,使用tomcat,是否可以运行cron作业类型服务? 例如,每隔15分钟,清除日志数据库。 你能以独立于容器的方式执行此操作,还是必须使用tomcat或其他容器运行? 请指定方法是保证在特定时间运行还是每15分钟运行一次,但如果应用程序循环使用(如果您使用计时器,那么它是如何在.net中)可以重置等等。

使用Schedule Expression参数化EJB调度程序

我正在使用EJB 3.1和jboss-eap-6.4,我想为ejb调度程序的小时,分​​钟和秒设置一些动态参数,如下所示: 非参数代码 – 每5分钟运行30秒: @Singleton @Startup public class TriggerJob { @EJB //some db injections @PostConstruct public void onStartup() { try { preparation(); } catch (CertificateVerificationException e) { e.printStackTrace(); } } @Schedule(second = “30”, minute = “*/5”, hour = “*”, persistent = false) public void preparation() { //my scheduled tasks } } 上面的代码正确执行。 动态参数代码 – […]

如何检查Quartz cron作业是否正在运行?

如何检查计划的Quartz cron作业是否正在运行? 有任何API可以进行检查吗?

在Windows Vista上请求Java应用程序的管理员权限

当我尝试通过Java ProcessBuilder类在任务调度程序中创建一个新任务时,我得到一个访问被拒绝错误的Windows Vista。 在XP上它工作得很好。 当我使用“Run as adminstrator”选项时,它也可以在Vista上运行。 然而,这是一个额外的步骤,用户可能不知道这一点。 当用户只需双击应用程序图标时,它将失败并拒绝访问。 我的问题是如何强制java应用程序在启动后立即重新获得管理员权限?

Java调度程序完全独立于系统时间的变化

使用Java Timer,然后切换到ScheduledExecutorService,但我的问题没有修复。 在系统时间更改之前安排的任务(通过ntpd)不会在指定的延迟时执行。 没有任何日志记录相同:(。 在64位linux上使用我的目标中的jre 1.6.0_26 64位。 更新: ScheduledExecutorService在Windows上运行正常。 问题仅出在运行64位JVM的基于64位Linux的系统上。 它在运行32位JVM的64位linux上运行良好……很奇怪。 在任何博客上都没有找到任何相同的参考。 IBM的JAVA SDK也存在同样的问题(ibm-java-sdk-7.0-0.0-x86_64-archive.bin)。 我已经提交了针对JDK 7139684的缺陷,它被接受但已被关闭并标记为6900441的副本 。 请投票给它,如果你觉得它的价值得到修复…我不知道为什么它已经修复了几年以上 以下是我用来测试此问题的示例代码: package test; import java.io.IOException; import java.util.Date; import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; /** * @author yogesh * */ public class TimerCheck implements Runnable { ScheduledExecutorService worker; public TimerCheck(ScheduledExecutorService worker) { super(); this.worker = worker; this.worker.schedule(this, 1, […]

如何在Play 2.0.4中每天安排任务+ onStart()?

我需要每天在playframework2.0.4中执行一段代码,当我尝试使用类扩展GlobalSettings时它可以工作。 但它适用于每个请求的实例。 我希望它在服务器启动时起作用并且每天执行一次任务。 package controllers; import java.util.concurrent.TimeUnit; import akka.util.Duration; import play.Application; import play.GlobalSettings; import play.libs.Akka; public class ParserJobApp extends GlobalSettings{ @Override public void onStart(Application app) { Akka.system().scheduler().schedule(Duration.create(0, TimeUnit.MILLISECONDS),Duration.create(6, TimeUnit.SECONDS), new Runnable() { @Override public void run() { System.out.println(“AAA — “+System.currentTimeMillis()); } }); } } 这是我的控制器开始上面的课程 public class Application extends Controller { public static Result index() […]

GWT:计时器和调度程序类

我已多次阅读此页面 ,并且我没有看到GWT的Timer和Scheduler类之间的一些固有差异。 我正在寻找以下各项的用例和适用性: Timer , Timer::schedule和Timer::scheduleRepeating Scheduler::scheduleDeferred Scheduler::scheduleIncremental IncrementalCommand DeferredCommand 这些似乎都在做同样的事情,或多或少,感觉你可以完成所有这些目标。 这只是GWT的方式,提供多种方式做同样的事情? 如果没有,请帮助我了解每个适当使用的时间和地点。