用 Start-Job 并行执行后台任务

启动作业、等待并收集对象化输出。

Windows进程自动化开发PowerShell低风险
运行 Start-Job { ... },再用 Get-Job | Wait-Job | Receive-Job 收集结果。

01命令

命令
$ Start-Job -ScriptBlock { Start-Sleep 5; 'done' }; Get-Job | Wait-Job | Receive-Job

02作用说明

作业在独立进程中运行,多项耗时操作可同时进行,输出以对象而非交错的文本返回。对需要分发任务又不想引入完整编排工具的脚本,这是原生的终端模式。

03风险

风险低风险
使用条件Windows 10/11 with PowerShell 5.1 or PowerShell 7+
!注意: 每个作业都有进程启动开销且不共享变量;PowerShell 7 中 CPU 密集任务请改用 ForEach-Object -Parallel。

04撤销

✓无需撤销——该命令不会改变持久状态。

05来源

  • Start-Job
    Microsoft Learn · vendor-doc · 2026-09-20
    依据: Starts a background PowerShell job in a separate process.

最后验证: 2026-10-13 · 分类: 开发者

06相关方案