しばらく作業した後、1000個のタスクを生成しても、すぐには開始されないことに気付きました。つまり、基本的に1000個のタスクを開始しても、そのうち100個が実行中で、900個が実行を待機しています。
だから私の質問は、彼らはどのように始めているのですか?.netは、タスクの実行を開始するタイミング、または実行を待機させるタイミングをどのように決定しますか?それらをすぐに開始するために私が従うことができる方法論は何ですか?特定の数のタスク/スレッドを常に実行したい。
タスクの代わりにスレッドを使用する場合、スレッドはすぐに実行を開始しますか、それとも.netはタスクのようにスレッドを開始しますか?
質問がはっきりしないかもしれませんので、はっきりさせてください。
基本的に私は1000個のタスクをスポーンしています(この数をスポーンしたままにします。1つのタスクが別のタスクの開始を完了したとき)タスクは125個Running
と875個だけですWaitingToRun
:)
これが私がタスクを開始する方法です
Task.Factory.StartNew(() =>
{
startCheckingProxies();
});
c#wpf 4.5