gpt4 book ai didi

c# - 抑制模块加载的 JIT 优化(仅限托管)

转载 作者:太空狗 更新时间:2023-10-29 17:57:30 27 4
gpt4 key购买 nike

如果我在 VS 中运行发布版本但附加了调试器。所以我可以设置断点并研究优化的代码反汇编。通常,为了查看所有优化,我需要在没有附加调试器的情况下运行并分离到正在运行的进程。

在 Visual Studio 中取消选择“在模块加载时抑制 JIT 优化(仅限托管)”开关是否足以带来相同的结果? “相同的结果”是指:与在未连接调试器的情况下启动时相同(优化的)机器指令?

我听说 JIT 编译器只会使用所有优化选项,如果程序集是发布版本并且没有附加调试器。现在我想知道这个开关是否可以让我的调试/检查更容易?

最佳答案

DEBUG 和 RELEASE 构建之间的 IL 存在细微差别,因此您确实希望在这种情况下使用 RELEASE 构建(即所有 Debug.XXX 调用都在 Release 情况下编译出来)。

取消选中“在模块加载时抑制 JIT 优化(仅限托管)”应该允许 JIT 进行优化,就好像没有附加调试器一样。我不知道这两种情况之间有什么区别。

关于c# - 抑制模块加载的 JIT 优化(仅限托管),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9564739/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com