2016-05-22 1 views
1

System.Exceptionは多くのメモリ割り当て(多くはStrings、さらにはIDictionary)を必要とすることがわかりました。 OutOfMemoryExceptionを構築するのに十分なメモリがない場合はどうなりますか?C#でOutOfMemoryExceptionを構築するメモリがないとどうなりますか?

検索後、同様の質問がありました:What happens when there's insufficient memory to throw an OutOfMemoryError? CLRはそのように動作しますか?

+2

IIRCは、CLRはまた、それを事前に割り当てます。 – SLaks

答えて

1

ソースコードcoreclrが見つかりました。 CLRはいくつかの例外クラスをあらかじめ割り当てているようです。

3

上記のように、フレームワークはいくつかのオブジェクトをあらかじめ割り当てています。 OutOfMemoryだけではありません。もちろん、StackOverflowも必要です。あなたはWinDbgのまたはいくつかの他のツールでそれを自分で見ることができます

参照元here

そしてまた、このblog post

は、私はこのコードを実行している例:私は、次のヒープ内の参照

static void Main() 
{ 
    Console.Read(); 
} 

enter image description here

関連する問題