Cobalah untuk mengkompilasi kode berikut dan Anda akan menemukan bahwa kompiler membutuhkan> 3 GB RAM (semua memori gratis di mesin saya) dan waktu yang sangat lama untuk mengkompilasi (sebenarnya saya mendapatkan pengecualian IO setelah 10 menit).
using System;
using System.Linq;
public class Test
{
public static void Main()
{
Enumerable.Range(0, 1).Sum(a =>
Enumerable.Range(0, 1).Sum(b =>
Enumerable.Range(0, 1).Sum(c =>
Enumerable.Range(0, 1).Sum(d =>
Enumerable.Range(0, 1).Sum(e =>
Enumerable.Range(0, 1).Sum(f =>
Enumerable.Range(0, 1).Count(g => true)))))));
}
}
Adakah yang bisa menjelaskan perilaku penasaran ini?
Versi CS: Microsoft (R) Visual C # Compiler versi 4.0.30319.17929 Nama OS: Microsoft Windows 7 Ultimate Versi OS: 6.1.7601 Paket Layanan 1 Build 7601