JIT 优化和调试

JIT 优化和调试

Visual Studio 2012
此主题尚未评级 评价此主题

当调试托管应用程序时,Visual Studio 会默认取消优化实时 (JIT) 代码。 取消 JIT 优化意味着您调试的是非优化代码。 由于代码未优化,因此代码会运行得稍慢一些,但您的调试体验会更全面。 由于调试优化代码要更难一些,因此建议仅在遇到优化代码中发生的 bug 无法在非优化版本中重现时使用。

JIT 优化在 Visual Studio 中由“在模块加载时取消 JIT 优化”选项控制。 您可以在“选项”对话框中“调试”节点下的“常规”页上找到此选项。

如果清除“在模块加载时取消 JIT 优化”选项,您可以调试优化 JIT 代码,但调试的能力会由于优化代码与源代码不匹配而可能受到限制。 因此,调试器窗口(如“局部变量”“自动”窗口)显示的信息可能没有调试非优化代码时显示的信息那么多。

另一个重要差异是有关使用“仅我的代码”进行调试。 如果您正在使用“仅我的代码”进行调试,调试器就会将优化代码作为非用户代码处理,不在调试时显示。 因此,在调试 JIT 优化代码时,您可能想关闭“仅我的代码”。 有关更多信息,请参见如何:单步执行“仅我的代码”

切记,当模块加载时,“在模块加载时取消 JIT 优化”选项会取消代码优化。 如果附加到已正在运行的进程,它可能包含已加载的代码、JIT 编译的代码和优化的代码。 “在模块加载时取消 JIT 优化”选项对这些代码无效,尽管它会影响在附加后加载的模块。 此外,“在模块加载时取消 JIT 优化”选项不影响用 NGEN 创建的模块,如 WinForms.dll。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值