关于将对象转换为相同类型的性能的问题(我知道一开始听起来很奇怪,但让我把它放在上下文中)
public T Get<T>(string key) where T : class
{
var objToReturn = (T)_cache[key];
if (objToReturn != null)
{
return objToReturn;
}
return null;
}
上面是一段代码,用于尝试从调用者强类型化的类型中T
获取类型对象。CacheObject
知道看到对象的类型是强类型的,我想知道这一行:
var objToReturn = (T)_chache[key];
这实际上会调用强制转换并将缓存中的实例转换为另一个实例并返回该实例,还是会发现类型与简单忽略的强制转换相同。
我要求强制转换的能力在以后开发该缓存用于获取派生类型的应用程序时很有用,但我不想在早期产生潜在的主要性能影响。
想法和谢谢。