問題タブ [powershell-workflow]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
powershell - powershell の並列 foreach は最大 5 つのスレッドを使用しますか?
のthrottlelimit
パラメーターはforeach -parallel
、スクリプトの実行時に使用されるプロセスの数を制御できます。しかし、5 を超えるプロセスを設定しても、5 を超えるプロセスを持つことはできませんthrottlelimit
。
スクリプトは、複数の PowerShell プロセスで実行されます。そこで、スクリプト内で PID を確認します。次に、PID をグループ化して、スクリプトの実行に使用されるプロセスの数を把握できるようにします。
出力は
$i
5 以下の場合、プロセスがあります$i
。しかし、$i
5 を超えると、プロセスは 5 つしかありません。スクリプト実行時のプロセス数を増やす方法はありますか?
編集: @SomeShinyObject の回答に応えて、別のテスト ケースを追加しました。@SomeShinyObject で与えられた例を修正したものです。S
10秒間スリープするだけの機能を追加しました。
そして、これが出力です。出力を時間 (秒数) でグループ化し、各グループ内で少し並べ替えてわかりやすくしました。関数S
が 5 ごとに呼び出されることは明らかですが、ここでthrottlelimit
は 10 に設定しています (最初に がありstart sleep 6..10
、10 秒後にがあり、10 秒後に がstart sleep 1..5
あり、10 秒後start sleep 11..15
に がありstart sleep 16..20
ます)。
azure - Select-AzureRmSubscription からのコンソール出力を非表示にする方法
powershellワークフローとして実行されるAzureワークブック内のコマンドSelect-AzureRmSubscriptionからの出力を非表示にする方法を知っている人はいますか
ありがとう