在下面的代碼:在屬性getter緩存密集計算
public class SomeClass
{
// ... constructor and other stuff
public in SomeProperty
{
get
{
return SomeHeayCalculation();
}
}
}
我認爲類是不可變的,所以每次SomeProperty
被訪問時,相同的值應返回。我的問題是,是否有可能避免每次計算值。是否有一些內置的緩存這種東西的機制?
我覺得他每次調用.SomeProperty時,都會檢索緩存版本,所以計算不必每次都做。 – 2011-08-01 13:12:14
@ 0A0D:是的,這就是'懶惰'會做什麼。它會執行一次'SomeHeavyCalculation'(當'Value'被* first *訪問時),然後返回緩存的版本。 –
噢好吧,我不明白你提供的鏈接。感謝您的澄清。 – 2011-08-01 13:14:03