我想为我的个人项目开发一些异步方法,并且正在研究框架以供参考。将对象字段分配给局部变量有什么优势?
我已经下载了.NET source code来看一看位和螺栓更紧密地(与开发商的意见,一些反射并没有给我们:-P)
不管怎样,在很多.NET的班我遇到了以下模式:
class SomeType
{
// ...
SomeClass m_Field;
// ...
SomeClass SomeMethod()
{
SomeClass localField = m_Field;
if (localField == null)
{
localField = new SomeClass();
m_Field = localField;
}
return localField;
}
}
这让我想知道使用这种模式的优点是什么?
据我所知,上面的图案更糟糕的是,在性能方面,除了下面的一个:
class SomeType
{
// ...
SomeClass m_Field;
// ...
SomeClass SomeMethod()
{
if (m_Field == null)
{
m_Field = new SomeClass();
}
return m_Field;
}
}
还是我失去了一些东西?
你能举一个具体的例子吗?你看过SomeClass的什么类型?它是某种类型的集合吗? – 2010-01-09 23:12:49