.NET反射的“成本”是多少?[重复]

.NET反射的“成本”是多少?[重复],第1张

.NET反射的“成本”是多少?[重复]

反射需要加载并处理大量类型的元数据。这会导致更大的内存开销和较慢的执行。根据本文,属性修改的速度要慢2.5到3倍,而方法调用的速度要慢3.5到4倍。

这是一篇很棒的MSDN文章,概述了如何使反射更快以及开销在哪里。如果您想了解更多信息,我强烈建议您阅读。

反射还会增加代码的复杂性,这会使代码更加混乱,因此很难使用。像斯科特·汉塞尔曼(Scott
Hanselman)
这样的人相信,通过反思,您经常遇到的问题比您解决的更多。如果您的团队主要是初级开发人员,则尤其如此。

如果您需要大量动态行为,则最好研究一下DLR(动态语言运行时)。随着.NET
4.0中的新更改,您可能需要查看是否可以将其中的某些内容合并到解决方案中。VB和C#对动态的附加支持使动态代码的使用非常优雅,并且可以很直接地创建自己的动态对象。

祝好运。

编辑:我在斯科特(Scott)的网站上做了更多的戳记,并在反思中发现了这个播客。我没有听过,但也许值得。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5150126.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-17
下一篇 2022-11-18

发表评论

登录后才能评论

评论列表(0条)

保存