我已经建立了一个带有 TaskExecutor 和 Taskscheduler 的系统,它以类似 cron 的计划运行任务,但也允许按需启动任务。
我无法解决的一个特殊问题是:如何从执行程序和调度程序获取有关当前正在运行的特定任务的信息。有没有标准的方法来做到这一点?我应该查看特定的子类或实现吗?我们在 Spring 3.2 上,我尝试了 ThreadPoolTaskExecutor 但发现它已被弃用。它确实有一种方法“getActiveCount()”,似乎在某种程度上朝着我想要实现的目标前进(尽管根本不完全)。
现在,我已经建立了一个系统,该系统拍摄 ORM 对象状态的快照,等待半分钟并拍摄另一个快照。比较这两者是了解任务是否在该对象上运行的一种非常简单的方法。
然而,这似乎不是最好的方法(根本!)。
有没有更好的办法?