Привет! Я пишу сценарий задания на PowerShell, который может выполнять его параллельно.
Пример кода, прикрепленный ниже для имитации сценария.Сценарий завершается ошибкой, когда мы передаем аргумент как «b» в блок сценария.
$createZip = {
Param ( [String] $source, [String] $zipfile )
if ($source -eq "b") {
throw "Failed to create $zipfile"
}
else {
return "Successfully created $zipfile"
}
}
$jobs = @()
$sources = "a", "b", "c"
foreach ($source in $sources) {
Start-Job -Name $source -ScriptBlock $createZip -ArgumentList $source, "${source}.zip"
}
Get-Job | Wait-Job | Out-Null
Если кто-то из заданий получает сбой, мне нужно прервать все запущенные задания.Как мне это сделать в PowerShell.