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

來源:互聯網
上載者:User

標籤:設計   一個   logs   ram   readonly   私人化   creat   single   應用程式   

消極式載入,亦稱延遲執行個體化,延遲初始化等,

主要表達的思想是,把對象的建立將會延遲到使用時建立,而不是在對象執行個體化時建立對象,即用時才載入。這種方式有助於提高於應用程式的效能,避免浪費計算,節省記憶體的使用等。針對於這種做法,似乎稱之為即用即建立更為合適些。

 .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的單例模式

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.