Передача параметров по ссылке всегда неудобна в PowerShell и, вероятно, в любом случае не будет работать для заданий PowerShell, как отмечал @ bluuf .
Я бы, наверное, сделал что-то вроде этого:
$cmd = {
Param($x, $y)
$x+1
$y+1
}
$a = 1
$b = 2
$a, $b = Start-Job -ScriptBlock $cmd -ArgumentList $a, $b |
Wait-Job |
Receive-Job
Приведенный выше код передает переменные $a
и $b
в блок сценариев и присваивает измененные значения переменным после получения выходных данных задания.