1

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

有没有办法检索工作列表或其他东西?

例如,一个作业使用 ProcessBuilder 调用 FFMPEG 编码器。我希望能够获得这份工作并在不需要时终止该进程(例如,上传了错误的文件并且不想等待一个小时才能完成)。如果我能掌握那个工作,那么我也可以进入这个过程。

我正在使用 Play 1.2.4

4

1 回答 1

1

请参阅 JobsPlugin.java 以了解如何列出所有已调度的作业。

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

就像是

for (Job<?> job : JobsPlugin.scheduledJobs) {
    if (job instanceof MyJob) {
      ((MyJob) job).cancelWork();
    }
}

其中 cancelWork 是您的自定义方法

于 2012-06-25T14:30:00.507 回答