首页 > 解决方案 > 并行运行多个 Visual Studio 任务

问题描述

我正在尝试在 Visual Studio () 中运行一个长期存在的后台任务,tsc --watch同时还将我的应用程序作为两个单独的任务运行。所以,(app)-[dependsOn]->(tsc --watch)。但是,似乎app任务在执行之前等待tsc命令完成,这是一个问题,因为它永远运行。

我正在简化我的问题以显示我遇到的实际问题,但希望能引导我走上正确的道路。

我的 tasks.json 文件中有两个任务:

{
    "label": "Echo 1",
    "command": "echo",
    "type": "shell",
    "args": [
        "echo1"
    ],
    "group": {
        "isDefault": true,
        "kind": "build"
    },
    "dependsOrder": "parallel",
    "dependsOn": [
        "Sleep 5"
    ]
},
{
    "label": "Sleep 5",
    "type": "shell",
    "command": "sleep",
    "isBackground": true,
    "args": [
        "5"
    ]
}

Echo 1 -depends on-> Sleep 5

根据视觉工作室文档,睡眠任务应该在后台运行,允许 Echo 任务完成它的事情。但是,每当我执行Echo 1任务时,它都会等到Sleep 5完成,然后它实际上会执行回显任务。

> Executing task: sleep 5 <


Terminal will be reused by tasks, press any key to close it.

> Executing task: echo echo1 <

echo1

Terminal will be reused by tasks, press any key to close it.

我已经尝试添加文档中详述的属性,但是每当我添加该字段时background,编辑器都会显示一个带有消息的弹出窗口。Property background is not allowed.

我是否遗漏了其他东西以确保该Sleep 5任务不会阻止该Echo 1任务?

我已经尝试过对每个任务使用presentationwith panel: dedicated/new,所以他们不使用相同的终端(甚至不确定这是否是 Visual Studio 执行任务的方式)。

标签: visual-studio-code

解决方案


推荐阅读