1

我可以使用这些方法splitnewChild为 SubMonitor [1]创建一个子项:

SubMonitor firstChild = parentMonitor.split(50);
SubMonitor secondChild = parentMonitor.split(50);

第二个孩子的创建自动完成第一个孩子[2]

每个 SubMonitor 一次只有一个活动的孩子。每次调用 newChild(int) 或 split(int) 时,结果都会成为新的活动孩子,并且消耗来自先前活动孩子的任何未使用的进度。

这使得没有必要在 SubMonitor 实例上调用 done(),因为子监视器会在下次触摸父监视器时自动清理。

=>如果我不想一个接一个地执行一个孩子但同时运行它们,推荐的创建孩子监视器的方法是什么?

创建第二个监视器子进程将立即导致错误的总进度,因为第一个子进程尚未完成。

一些想法:

a)根本不要使用SubMonitor那个并发案例,而是坚持弃用SubProgressMontior(我还没有检查这是否有帮助。)?

b)以某种方式跳过未使用进度的消耗?(suppressFlags可以传递给 split 方法的似乎没有为此提供值。)

相关问题

4

0 回答 0