【问题标题】:Eclipse Plugin Cancel CompletelyEclipse插件完全取消
【发布时间】:2014-12-08 23:37:59
【问题描述】:

当您在 Eclipse 插件中实现 Job 并覆盖 run() 方法时,您可以更改参数 IProgressMonitor 并在用户按下 Cancel 时跳过任务,如下所示:

        if (!monitor.isCanceled()){
            monitor.subTask("Doing stuff");
            //do task
        } else {
            returnedStatus = Status.CANCEL_STATUS;
        }

但这意味着至少要完成当前活动的任务,然后才能跳过其余任务。有没有办法在用户按下取消时完全中止插件活动并执行 finally 块,而无需等待下一个 if (!monitor.isCanceled()) 并且无需将整个程序细分为子任务?

【问题讨论】:

    标签: eclipse eclipse-plugin terminate eclipse-pde cancellation


    【解决方案1】:

    没有。您的工作必须是对取消做出反应的人,因此您需要将工作分解为您可以使用worked() 报告进度并检查取消的任务,或者您必须发送子进度监视器并执行相同的操作东西。

    https://eclipse.org/articles/Article-Progress-Monitors/article.html

    【讨论】:

    • 嗯,很遗憾,但感谢您的澄清。
    猜你喜欢
    • 1970-01-01
    • 2014-04-12
    • 2012-09-04
    • 1970-01-01
    • 2011-01-28
    • 2015-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多