Invoke-Parallel ожидает при использовании Start-Process - PullRequest
0 голосов
/ 09 октября 2019

Кто-нибудь знает, почему Invoke-Parallel не является многопоточным? Когда я запускаю этот цикл, он не запускает следующий блок сценариев, пока не завершится предыдущий.

Примечание. Я также пробовал это на PoshRSJob .

Я выполняюфайл jar Java для каждого найденного файла. Если вы посмотрите здесь , они используют команду Start-Process и ждут rar.exe.

 . .\Invoke-Parallel.ps1

 $ScriptBlock = {
        start-Process -file java -ArgumentList @('-jar',"a:\conversion.jar",$_.FullName,"$($_.FullName).tmp") -Wait
 }

 ForEach ($file in (GCI -Path b:\*)) {
   Invoke-Parallel -InputObject $file -ScriptBlock $ScriptBlock -Throttle 5 
 }

* Обратите внимание, что это всего лишь простой пример, мой оригинальный сценарий более сложныйно я сузил это до этой записи, которая заставляет многопоточность не многопоточность.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...