【发布时间】:2010-09-18 11:06:31
【问题描述】:
我目前的编程心态是反射是我最好的朋友。我经常使用它来动态加载允许“松散实现”而不是严格接口的内容,以及许多自定义属性。
使用反射的“实际”成本是多少?
对于频繁反射的类型是否值得努力缓存反射,例如我们自己的 pre-LINQ DAL 对象代码在表定义的所有属性上?
缓存内存占用量会超过反射 CPU 使用率吗?
【问题讨论】:
-
我到底是怎么在一个 3 个月大并得到回答的话题上投下反对票的?
-
我们使用通用基类和反射自动化了我们的数据访问层。我们的大多数通用基类都是使用反射实现的。这大大减少了我们必须为重复性任务编写的代码行数。但是性能受到了打击。您采用了哪种解决方案?
-
我们采用了非常相似的方法,现在正在缓存元数据。
-
使用fasterflect.codeplex.com的api。对于 getter/setter/invokers 和其他一些东西,它将加快反射速度 500 倍。如果您需要扩展它,也有关于它如何工作的源代码和信息。
-
很酷,谢谢,会调查的!
标签: c# .net optimization reflection