다음 코드를 컴파일하면 컴파일러가 3GB 이상의 RAM (내 컴퓨터의 모든 여유 메모리)을 사용하고 컴파일하는 데 매우 오랜 시간이 걸립니다 (실제로 10 분 후에 IO 예외가 발생 함).
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 # 컴파일러 버전 4.0.30319.17929 OS 이름 : Microsoft Windows 7 Ultimate OS 버전 : 6.1.7601 Service Pack 1 Build 7601