【发布时间】:2012-03-26 20:03:51
【问题描述】:
.GetProperties() 方法在 C# 中需要多少纳秒?
编辑
测试:
在简单的开发计算机上(没什么花哨的),项目有 8 个属性,并且没有继承:
stopwatch.Start();
for (int i = 0; i < 10000; i++)
{
PropertyInfo[] properties = item.GetType().GetProperties();
}
stopwatch.Stop();
结果:
此外
当使用额外的嵌套 foreach 循环第二次运行时,总共只用了 6 毫秒。这是添加的代码(在 for 循环内):
foreach (var prop in properties)
{
var x = prop;
}
【问题讨论】:
-
所需的参数会因任何数量的参数而异。不可能绝对确定地说明它或任何一段代码的执行时间。
-
@JaredPar - 我在查找这些参数或任何基准时遇到了麻烦。你知道我可以去哪里看吗?
-
请注意,Reflection 标签拼写错误。为什么我无法重新标记此帖子,但我可以与其他人一起这样做?
-
@MattBurland - 请参阅编辑以对一些平庸的硬件进行测试。
标签: c# reflection getproperties