// parameters.Count == 10
// actualFreeLicenses == 2
Parallel.For(0, parameters.Count, new ParallelOptions()
{
MaxDegreeOfParallelism = actualFreeLicenses
}, i =>
{
ExternalProgram(i);
}
);
上記のコードを実行するi
と、メソッドに渡されるの値ExternalProgram
が1と6、後で2と7、後で3と8であることがわかります...
14個のパラメータと2個のライセンスがある場合、常に1と8を起動し、後で2と9を起動します...
最初の1と2、後で3と4などの順序を定義することは可能ですか?