2
200,000,000은 최대 32 비트 INTEGER, 2,147,483,647보다 훨씬 적습니다.INTEGER 배열의 크기를 200,000,000으로 지정하면 왜 StackOverflowException이 발생합니까?
200,000,000은 최대 32 비트 INTEGER, 2,147,483,647보다 훨씬 적습니다.INTEGER 배열의 크기를 200,000,000으로 지정하면 왜 StackOverflowException이 발생합니까?
스택 오버플로는 비트 수가 부족하여 컴퓨터가 메모리가 부족 해지면 발생하지 않습니다. 200M 엔트리 어레이는 800Mb의 메모리를 필요로합니다. 그것은 스택에 넣기 매우 큽니다.
일반적으로 메모리 크기는 문제가 아니지만 전체 RAM 용량보다 작은 스택 크기입니다. 예를 들어, 4GB RAM이 장착 된 Mac OS 노트북의 기본 스택 크기는 8MB입니다. –
INT_MAX와 관련 있다고 생각한 사실 때문에 스택 오버플로가 무엇인지 분명하지 않다는 것을 알게되었습니다. http://en.wikipedia.org/wiki/Stack_overflow – Chuck
스택 오버플로는 스택의 크기와 관련이 있으며 Int의 크기와 관련이 없습니다. –
StackOverflow에서 스택 오버플로입니다. 제프리가 우리와 놀고있는 것 같아요. Neat :-) –