这只是出于好奇心的问题。虽然通常会考虑框架和执行中涉及的步骤,但我会说是的。我还想考虑内存/光盘访问和网络等因素限制非托管代码的性能。
答案 0 :(得分:3)
引用Herb Sutter
"首先,JIT编译不是主要问题。根本原因更为根本:托管语言进行了深思熟虑的设计权衡,以优化程序员的工作效率,即使这种情况从根本上处于紧张状态并且以牺牲性能效率为代价。"
在“预防”和“治疗”之间始终存在着不可避免的根本区别 - 在性能优化方面,C ++总是选择“预防”,而托管语言则通过上述英勇的努力选择“治愈”等等。但旧的盎司/英镑说是不可避免的;你不能打败预防(部分是因为你可以在第一次做预防之后总是加上治疗,但不能反过来),如果你主要关心表现和控制,那么你应该使用一种旨在优先考虑它的语言前面,就是这样。
您可以参考此文章以获得更清晰