В node.js вы можете запустить несколько асинхронных функций одновременно, а затем заставить их возвращать результаты функции, когда все они завершены: понимание-узел-js-асинхронная-параллельная
В PowerShell я видел похожую функциональность, используя Start-Job
, но!когда на самом деле пытаются выполнить задачи, они, кажется, слишком сильно отстают, чтобы быть неблокирующими, и запускаются параллельно:
Write-Host "Running jobs $($start) - $($end)"
for($i = [int]$start; $i -le $end; $i++) {
$jobResults += Start-Job -ScriptBlock $someFunc | wait-job | receive-job
}
Я полагаю, что это происходит от функции wait-job
, которая ожидает запущенную работузавершить до его получения.
Есть ли способ ожидания всех из них и получения их в массив, как это делает узел async?Или я смотрю на яблоки и апельсины здесь?