いくつかの処理のために異なるスレッドを生成しようとしています。for
各スレッド内のいくつかのロジックにループ インデックスを使用します。
以下のコードで、異なるスレッドに 1,2,3,4,5 を出力させるにはどうすればよいですか? これを実行するたびに、3,3,3,4,6,6 & 2,2,3,5,5,6 などの異なる数値が出力として得られます
。 t それを正しく行う。誰でも私がこれを達成するのを手伝ってくれますか? 各スレッド/タスクが正しいインデックスを取得するようにしたいだけです。各タスクは別のスレッドで強制的に実行されることに注意してください。
List<Task> tasks1 = new List<Task>();
for (int j = 1; j <= 5; j++)
{
tasks1.Add(Task.Factory.StartNew(() =>
{
Console.WriteLine(j);
}
, new CancellationToken()
, TaskCreationOptions.LongRunning
, TaskScheduler.Default)
);
}
Task.WaitAll(tasks1.ToArray());
Console.Read();