的Windows 7,英特爾酷睿i3,64位,4GB內存,2.27 GHz的
的.NET Framework 4.0爲什麼Thread和Task之間的性能差異如此之大?
我有以下代碼:
static void Main(string[] args)
{
var timer = new Stopwatch();
timer.Start();
for (int i = 0; i < 0xFFF; ++i)
{
// I use one of the following line at time
Task.Factory.StartNew(() => { });
new Thread(() => { }).Start();
}
timer.Stop();
Console.WriteLine(timer.Elapsed.TotalSeconds);
Console.ReadLine();
}
如果我使用任務的輸出總是小於0.01秒,但如果我使用線程輸出始終大於40秒!
這怎麼可能?爲什麼這麼差?
一開始4096個線程,其他隊列4096級的任務隊列中的..你不是衡量以外的其他任何東西。毫無意義。 –