Windows 7, Intel Core i3, 64 bit, RAM 4Gb, 2,27 GHz
.NET Framework 4.0Tại sao có nhiều khác biệt về hiệu suất giữa Chủ đề và Tác vụ?
Tôi đã đoạn mã sau:
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();
}
Nếu tôi sử dụng Task đầu ra luôn luôn là ít hơn 0,01 giây, nhưng nếu tôi sử dụng, đầu ra luôn lớn hơn 40 giây!
Làm cách nào có thể? Tại sao rất nhiều sự khác biệt?
Bắt đầu 4096 chủ đề, hàng đợi khác 4096 nhiệm vụ trong hàng đợi .. bạn không đo bất kỳ thứ gì khác ngoài đó. Vô nghĩa .. –