我尝试摆脱java调度器。我正在使用ScheduleExecuterService并将ScheduleFuture对象保存在Hashtable中以便稍后访问。但我怎么能从ScheduleFuture对象检索runnableClass?Java:ScheduleFuture getClass并在下次运行时获取信息?
第二个问题:我想知道runnableClass何时会运行下一个?但我没有找到一个功能。
这是我的代码:
private Hashtable<String,ScheduledFuture<?>> scheduled;
...
String id = "RUNID";
MyScheduledRunnable runnableClass = new MyScheduledRunnable(log)
ScheduledFuture<?> s = scheduledExecutorService.scheduleAtFixedRate(runnableClass, 0, 15, TimeUnit.MINUTES);
scheduled.put(id, s);
... later ...
ScheduledFuture s = scheduled.get("RUNID");
如何从s获得runnableClass? 如何在下一次运行作业时获取信息?例如s.nextRun()? 或检查它是否还活着?
也许你们有些人可以帮助我!
谢谢!
谢谢,如何检索异常如果有人被抛出?你有一个例子PLZ? – Mike 2015-02-24 22:09:23
只要调用get()就会抛出一个ExecutionException;调用getCause就会返回原来的例外。 – 2015-02-24 22:58:57