2

Eric Lippertのブログ エントリを読んで、次のスニペットに出会いました。

...永久にループするか (末尾呼び出しを最適化できるアーキテクチャを使用している場合)、スタックが不足してプロセスがクラッシュします。

コンパイラが末尾再帰を最適化できることは承知していますが、末尾呼び出しを最適化できるアーキテクチャとはどういう意味ですか?

4

1 に答える 1

2

これは、x64 での .NET JIT が x86 での JIT とは異なる動作をすることを意味します。x64 では、テール コールの最適化がより積極的に適用されます。

2007 年のこのブログ投稿と 2009 年のこのブログ投稿を参照て、従うべきいくつかのルールの実装の詳細 (依存しないでください) を確認してください。

于 2011-08-19T17:35:04.843 に答える