【发布时间】:2015-04-24 17:23:10
【问题描述】:
我想知道创建新变量或调用方法几次。 什么对整体性能和 GC 清洗更好? 看看:
public static string GetValue(RegistryKey key, string value)
{
if (key.GetValue(value) == null)
return null;
string newValue = key.GetValue(value).ToString();
if (String.IsNullOrWhiteSpace(newValue))
return null;
return newValue.ToLower();
}
我怎样才能使这段代码清晰?
【问题讨论】:
-
很可能两者都不是。你永远无法知道编译器会做什么来优化你的代码。
-
StackOverflow 是关于特定编程问题的。如果您想谈论代码质量,请前往Code Review。请在发布之前查看他们的 How-to-Ask 页面(您应该在此处完成)。
-
我猜,这是不必要的过早优化。在大多数情况下,您应该使用分析器来查找瓶颈并对其进行优化。
-
这不是过早优化的情况。如果
RegistryKey.GetValue方法不缓存其结果,则此调用将需要注册表访问,这比访问局部变量要慢几个数量级。
标签: c# variables methods garbage-collection