1. 程式人生 > >.net4.0設計模式(一)使用Lazy的單例模式

.net4.0設計模式(一)使用Lazy的單例模式

private 延遲 是否 方式 get pub ram creat 程序

延遲加載,亦稱延遲實例化,延遲初始化等,

主要表達的思想是,把對象的創建將會延遲到使用時創建,而不是在對象實例化時創建對象,即用時才加載。這種方式有助於提高於應用程序的性能,避免浪費計算,節省內存的使用等。針對於這種做法,似乎稱之為即用即創建更為合適些。

 .net Framework4.0提供了一個包裝類 Lazy<T>,可以輕松的實現延遲加載。

public class LazySingleton
{
    
//私有化構造函數用於單例模式
private LazySingleton() {  }

//Lazy原型為Lazy<T> 對象名=new Lazy<T>(Fun<T>)
private static readonly Lazy<LazySingleton> Linstance = new Lazy<LazySingleton>(() => { return new LazySingleton(); }); //通過Value屬性來獲取當前對象的值。 public static LazySingleton Instance { get { return Linstance.Value; } } //可以通過IsValueCreated屬性來確定對象是否已創建 public static bool IsValueCreated { get
{ return Linstance.IsValueCreated; } } }

.net4.0設計模式(一)使用Lazy的單例模式