Java 我如何等待DRMAA的外部启动作业?

Java 我如何等待DRMAA的外部启动作业?,java,sungridengine,drmaa,Java,Sungridengine,Drmaa,我想等待一个作业完成,该作业已在外部提交 我的第一个想法是通过调用qstat,然后执行session.waitjobID,session.TIMEOUT\u WAIT\u FOREVER;来获取jobID;。但这不起作用。除了给qstat打电话直到作业不再列出之外,还有其他想法吗?你能确切地解释一下session.waitjobId、session.TIMEOUT\u永远等下去吗?这也是我的喜好,允许您检索作业的返回代码 有些事情可能是相关的;建议使用同步而不是等待: 否则,我希望您可以在作业中

我想等待一个作业完成,该作业已在外部提交


我的第一个想法是通过调用qstat,然后执行session.waitjobID,session.TIMEOUT\u WAIT\u FOREVER;来获取jobID;。但这不起作用。除了给qstat打电话直到作业不再列出之外,还有其他想法吗?

你能确切地解释一下session.waitjobId、session.TIMEOUT\u永远等下去吗?这也是我的喜好,允许您检索作业的返回代码

有些事情可能是相关的;建议使用同步而不是等待:

否则,我希望您可以在作业中添加一些内容来记录/发出完成信号?

当我调用session.waitjobId、session.TIMEOUT\u WAIT\u时,我会得到以下结果:org.ggf.drmaa.InvalidJobException:“jobid”指定的作业不存在。我还尝试了同步,但它并没有真正等到作业完成。
session.synchronize(Collections.singletonList(jobId),
                       Session.TIMEOUT_WAIT_FOREVER, false); 
int status = session.getJobProgramStatus(jobId);