Спробуйте скомпілювати наступний код, і ви побачите, що компілятор займає> 3 ГБ оперативної пам'яті (вся вільна пам'ять на моїй машині) і дуже тривалий час для компіляції (насправді я отримую виняток IO через 10 хвилин).
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)))))));
}
}
Хтось може пояснити цю цікаву поведінку?
Версія CS: Microsoft (R) Visual C # Compiler версії 4.0.30319.17929 Назва ОС: Microsoft Windows 7 Ultimate Версія ОС: 6.1.7601 з пакетом оновлень 1, збірка 7601