gpt4 book ai didi

c# - 在 Windows CE 中创建对象实例比反射更快

转载 作者:太空狗 更新时间:2023-10-29 20:35:12 25 4
gpt4 key购买 nike

所以在看了一篇描述如何 Create Object Instances Faster Than Reflection 的文章之后我真的很兴奋,因为在我的代码中我目前有很多反射(reflection)。不幸的是,Windows CE 不支持 DynamicMethodILGenerator编辑:Windows CE 支持Activator

我想知道是否有人知道有什么方法可以比 CE 中的反射更快地创建对象实例。如果没有,也许有人可以解释为什么 Windows CE 不支持此功能,以及是否有任何变通方法可以在 CE 中获得此功能。即使我必须编写自己的 DynamicMethodILGenerator 类,这也是值得的 :)

最佳答案

首先,支持Activator。看看the docs here .

也就是说,这并不是地球上最快的事情,尤其是当您打算创建给定类型的多个实例时。我在 OpenNETCF.IoC framework 中做了什么在对构建对象的不同方式进行大量测试之后,以每种类型为基础缓存 ConstructorInfo(特别是在 ObjectFactory class 中)并将其用于对象创建。是的,您必须在第一次使用反射来获取 CI,但后续调用非常快,因为您已经获得了委托(delegate)。

关于c# - 在 Windows CE 中创建对象实例比反射更快,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5147761/

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