专栏首页林德熙的博客win10 uwp 禁止编译器优化代码

win10 uwp 禁止编译器优化代码

有时候写了一些代码,但是在优化代码的时候出错,但是如果不优化代码,性能很差。如何让编译器不优化一段代码?

一般发布的软件都会选优化代码,点击属性选择生成就可以看到优化代码

假如有方法 Foo ,这个方法里面写了一些特殊代码,不想让编译器优化,那么可以如何做?

有一个特性,可以让编译器不优化这段函数,这个特性就是MethodImpl

[MethodImpl(MethodImplOptions.NoOptimization | MethodImplOptions.NoInlining)]
private void MethodWhichShouldNotBeOptimized()
{
}

如果使用特性,必须是 .net 3.5 以上,这个特性是在 3.5 加的,之前没有

关于 MethodImplOptions 参见 https://msdn.microsoft.com/en-us/library/system.runtime.compilerservices.methodimploptions(v=vs.110).aspx

参见:https://stackoverflow.com/a/38633044/6116637

最近看到这篇文章讲的很好 深入了解 WPF Dispatcher 的工作原理(Invoke/InvokeAsync 部分) - walterlv


本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • win10 uwp 禁止编译器优化代码

    有时候写了一些代码,但是在优化代码的时候出错,但是如果不优化代码,性能很差。如何让编译器不优化一段代码?

    林德熙
  • WPF DrawingVisual

    为何需要学这个?如果需要画出图形,对性能有要求,或者需要了解WPF如何画图,就需要知道这个。

    林德熙
  • win10 UWP 显示地图

    第一步引用地图xmlns:Map="using:Windows.UI.Xaml.Controls.Maps"

    林德熙
  • win10 uwp 禁止编译器优化代码

    有时候写了一些代码,但是在优化代码的时候出错,但是如果不优化代码,性能很差。如何让编译器不优化一段代码?

    林德熙
  • 数感一分钟 | 小红换牛奶

    用户7378374
  • 并发编程讲解(一)

    另外的线程想获取对象头中的锁信息的时候,会发现对象头中已经记录一把锁(monitor),他就获取不到。monitor是互斥的,对象头记录的monitor就不会分...

    用户7386338
  • SRE和DevOps的关系:把SRE看作是DevOps接口的实现

    译者注:近几年,包括Oracle、微软在内的全球主要的软件企业都在其云服务研发和运营部门推行DevOps或SRE。我所在的系统架构和性能服务部门也在2017年初...

    王录华
  • [Python]将你的module制作成

        python解释器查找module进行加载的时候,查找的目录是存放在sys.path变量中的,sys.path变量中包含文件的当前目录。如果你想使用一个...

    py3study
  • 库克说AI也能创造很多就业岗位,苹果加码教育布局

    整理 | DavidZh 苹果公司 CEO 蒂姆·库克在上个月的新 iPad 发布后,接受了 Recode 和 MSNBC 的采访,谈了苹果在教育市场的布局、...

    AI科技大本营
  • DACL原理.控制文件的访问权限(文件,注册表.目录.等任何带有安全属性的对象.)

    DACL称为自主访问的控制列表.是应用程序开发必要且重要的部分.由于空DACL 允许对所有用户进行类型的访问.所以一般程序开发中都是传入NULL

    IBinary

扫码关注云+社区

领取腾讯云代金券