在模块加载燮preSS JIT优化(仅限托管) [英] Suppress JIT optimization on module load (managed only)

查看:279
本文介绍了在模块加载燮preSS JIT优化(仅限托管)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果我运行VS但调试器附着的发布版本。所以,我可以设置断点,并探讨优化code分解。通常情况下,才能看到所有的优化,我需要运行没有附加调试器和分离到正在运行的proccess。

If I run a release build in VS but WITH debugger attached. So I can set breakpoints and investigate the optimized code disassembly. Usually, in order to see all optimizations I need to run WITHOUT a debugger attached and detach to the running proccess.

是否取消勾选足以带来同样的结果燮preSS JIT模块负载优化(管理专用)开关在Visual Studio?通过同样的结果我的意思是:相同的(优化)机器指令的通过启动调试器没有连接?

Does unselecting the "Suppress JIT optimization on module load (managed only)" switch in Visual Studio is sufficient to bring the same result? By 'same result' I mean: same (optimized) machine instructions as by starting without debugger attached?

我听到了JIT编译器将只利用所有优化选项,如果程序集是一个发布版本并没有调试附着。现在,我不知道这个开关可以使我调试/现场检查更容易?

I heard the JIT compiler would only utilize ALL optimization options, if the assembly was a release build and NO debugger was attached. Now I wonder if this switch could make my debugging / inspecting live easier?

推荐答案

有调试和发布之间的IL小的差异版本,所以你要使用的发行版本在这种情况下(即所有Debug.XXX呼叫编出来在推出的情况下)。

There is small differences in IL between DEBUG and RELEASE builds, so you do want to use RELEASE build in this case (i.e. all Debug.XXX calls are compiled out in Release case).

取消选中模块负载燮preSS JIT优化(仅限托管)应该允许JIT,就好像没有调试器附着做这样的优化。我不知道这两个情况之间的差异。

Un-checking "Suppress JIT optimization on module load (managed only)" should allow JIT do do optimizations as if no debugger attached. I'm not aware of any differences between these 2 cases.

这篇关于在模块加载燮preSS JIT优化(仅限托管)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆