Я не уверен, нужно ли это требовать многопоточности, на основе работы или async, но в основном у меня есть функция Powershell script, которая принимает несколько параметров, и мне нужно называть ее несколько раз с разными параметры и выполните их параллельно.
В настоящее время я вызываю функцию следующим образом:
Execute "param1" "param2" "param3" "param4"
Как я могу вызвать это несколько раз, не дожидаясь, когда каждый вызов будет выполнен, чтобы выполнить возврат к вызывающему абоненту?
В настоящее время я запускаю v2.0, но при необходимости могу обновить
EDIT: вот что у меня до сих пор, что не работает:
$cmd = {
param($vmxFilePath,$machineName,$username,$password,$scriptTpath,$scriptFile,$uacDismissScript,$snapshotName)
Execute $vmxFilePath $machineName $username $password $scriptTpath $scriptFile $uacDismissScript $snapshotName
}
Start-Job -ScriptBlock $cmd -ArgumentList $vmxFilePath, $machineName, $username $password, $scriptTpath, $scriptFile, $uacDismissScript, $snapshotName
Я получаю сообщение об ошибке:
cannot convert 'system.object[]' to the type 'system.management.automation.scriptblock' required by parameter 'initializationscript'. specified method is not supported
EDIT2: я изменил свой script, но я все еще получаю ошибку, упомянутую выше. Здесь мой мод:
$cmd = {
param($vmxFilePath,$machineName,$username,$password,$scriptTpath,$scriptFile,$uacDismissScript,$snapshotName)
Execute $vmxFilePath $machineName $username $password $scriptTpath $scriptFile $uacDismissScript $snapshotName
}
Start-Job -ScriptBlock $cmd -ArgumentList $vmxFilePath, $machineName, $username $password, $scriptTpath, $scriptFile, $uacDismissScript, $snapshotName