检测Azure批处理作业的结束

时间:2019-01-23 13:14:10

标签: node.js azure-batch

在我的应用程序中,我创建一个Azure批处理作业。这是一个Node应用程序,我使用的是azure-batch Node客户端,但我也可以使用REST,我认为这并不重要。但是,我无法切换到C#客户端。

我希望作业在几秒钟内完成,并且我希望暂停代码,直到批处理作业结束,但是我不确定如何在不轮询作业状态API的情况下检测到作业的结束< / strong>。 Node客户端和REST API均未公开此类功能。我以为我可以报名参加某种活动,但找不到任何类似的活动。有工作发布任务,但是我不确定是否可以使用它们来实现。

有什么想法可以从我的应用程序中检测到Azure批处理作业的结束吗?

1 个答案:

答案 0 :(得分:0)

一种方法是将任务添加到作业后,将作业的onAllTask​​sComplete属性设置为“ terminatejob”。

然后,您可以轮询Job-Get API,并检查作业的状态属性以了解作业何时完成(https://docs.microsoft.com/en-us/rest/api/batchservice/job/get#jobstatehttps://docs.microsoft.com/en-us/javascript/api/azure-batch/job?view=azure-node-latest#get-string--object-)。