1

これは難しい質問かもしれませんが、私が持っているのは 1000 行を含む DataTable です。これらの行の foreach 新しいスレッドで処理したい。ただし、スレッドを 4 スレッドに制限したいと考えています。したがって、基本的には、データテーブル全体が処理されるまで、常に 4 つのスレッドを実行し続けています。

現在、私はこれを持っています。

  foreach (DataRow dtRow in urlTable.Rows)
        {
            for (int i = 0; i < 4; i++)
            {
                Thread thread = new Thread(() => MasterCrawlerClass.MasterCrawlBegin(dtRow));
                thread.Start();
            }
        }

これが逆であることは知っていますが、探しているものを達成する方法がわかりません。非常に複雑な while ループを考えましたが、それは最善の方法ではないでしょうか? どんな助けでも大歓迎です。

4

1 に答える 1