2016-11-14 26 views
1

我在这里得到了部分答案,但不完全是我想要的。列出当前Ignite作业并取消它们

该链接描述了如何获得任务期货清单,但我真正希望能够做的是列出和取消个别工作(可能会挂起,长时间运行等)。我已经看到了另一篇文章暗示这是不可能的,但我想确认(见第二个链接)

感谢

  1. http://apache-ignite-users.70518.x6.nabble.com/How-can-I-obtain-a-list-of-executing-jobs-on-an-ignite-node-td8841.html

  2. http://apache-ignite-users.70518.x6.nabble.com/Cancel-tasks-on-Ignite-compute-grid-worker-nodes-td5027.html

回答

1

是的,这是不可能的,实际上我不确定在一般情况下如何做到这一点。想象一下,有5个工作正在运行,你想取消其中的一个。你将如何识别它?这似乎是特定于我的非常用例。

但是,您始终可以实现您自己的机制来执行此操作。其中一种可能的方式是使用ComputeTaskSession API和任务属性。例如,设置一个特殊属性作为取消作业的信号,并创建将相应地停止作业执行的属性监听器。

+0

嗨,但是 - 正如你所提到的那样,我将如何列出所有节点上每节点运行的作业 - 一次性?这将是取消行动的先导。 Thx –

+1

开箱即用无法做到这一点。但是你可以在某处保存这些信息(例如在特殊的缓存中)。在作业开始时放入某种ID并在作业结束时将其删除。 –

相关问题