检索作业和/或流程

时间:2012-06-25 13:01:37

标签: java playframework processbuilder playframework-1.x

是否有一种简单的方法来检索作业并检查例如Play的状态? 我有一些运行很长时间的编码作业/下载作业。在某些情况下,我想取消它们。

有没有办法检索工作列表或什么?

E.g。一个Job使用ProcessBuilder调用FFMPEG编码器。如果不需要,我希望能够完成这项工作并终止该过程(例如上传了错误的文件,并且不想在完成之前等待一小时)。如果我能掌握那份工作,那么我也可以参与这个过程。

我正在使用Play 1.2.4

1 个答案:

答案 0 :(得分:1)

请参阅JobsPlugin.java以了解如何列出所有scheduledJobs。

获取当前执行的任务比较棘手但您可以通过检查Job类并在自定义Job中调用方法告诉他取消来在JobsPlugin.scheduledJobs列表中找到您的作业

这样的东西
for (Job<?> job : JobsPlugin.scheduledJobs) {
    if (job instanceof MyJob) {
      ((MyJob) job).cancelWork();
    }
}

其中cancelWork是您的自定义方法