1

start-job を使用して以下のスクリプトを変換する方法が非常に心配です。比較するモジュールが 6 つありますが、順番に時間がかかりすぎます。この比較を並行して実行できるように、start-job オプションを採用しようとしています。バックグラウンドで

これを試した -

Start-Job -Name "Comparecontrol" -filepath $ExecuteSbtWithDcmDm -ArgumentList $CompareControl,"",$false,$false | Out-Null
echolog $THISSCRIPT $DCM_UPDATE_LOG_FILE $LLINFO "Finished Control Master Comparison

メインスクリプト

4

1 に答える 1

3

一般的な流れは次のようになります。

$jobs = @()
$jobs += Start-Job -scriptblock {...}
...
$jobs += Start-Job -scriptblock {...}
Wait-Job $jobs
$results = Receive-Job $jobs

Start-Job によって返されるジョブ インスタンスを保存する代わりに、ジョブ名を使用できます。

$jobName = 'CompareControl'
foreach ($script in $scripts)
{
    Start-Job -Name $jobName-scriptblock {&$script} -ArgumentList ...
}
Wait-Job -Name $jobName
$results = Receive-Job -Name $jobName
于 2012-09-12T15:03:57.603 に答える