2

阅读Eric Lippert 的博客文章,我发现了这个片段:

...你要么永远循环(如果你在一个可以优化尾调用的架构上)要么用完堆栈并使进程崩溃。

我知道编译器可以优化尾递归,但是可以优化尾调用的架构是什么意思?

4

1 回答 1

2

这意味着 x64 上的 .NET JIT 的行为与 x86 上的 JIT 不同——x64 更积极地应用尾调用优化。

请参阅 2007 年的这篇文和2009 年的这篇博文,了解一些遵循的规则的一些实施细节(不依赖于)。

于 2011-08-19T17:35:04.843 回答