2

我创建了一个 VSCode 扩展并按其名称成功运行了一个任务,例如:

vscode.commands.executeCommand("workbench.action.tasks.runTask", "task_name_here");

现在,当我尝试按名称终止该任务时,UI 不断要求我手动选择任务:

vscode.commands.executeCommand("workbench.action.tasks.terminate", "task_name_here");

有没有办法做到这一点?

4

1 回答 1

0

从 VSCode 1.24 开始,有一个 API 可以让您执行此操作。您可以为正在启动/结束的任务等事件注册事件侦听器,并且这些事件都包含一个TaskExecution实例。最重要的是,有一个包含所有当前执行的只读列表。执行定义如下

/**
 * An object representing an executed Task. It can be used
 * to terminate a task.
 *
 * This interface is not intended to be implemented.
 */
export interface TaskExecution {
    /**
     * The task that got started.
     */
    task: Task;

    /**
     * Terminates the task execution.
     */
    terminate(): void;
}
于 2018-05-20T07:21:01.040 回答