What is Lazy initialization in c#.net

Lazy initialization

For improving the performace of the application object will initializaed at first usage. This process is called as Lazy initialization.

In the singleton design pattern we are using this Lazy initialization. Please check below example. In this we are using lazy Initialization in public static SingletonTest returnInstanc() this method.

   class Program
        static void Main(string[] args)
//can't use new keyword due to protection level. 
            SingletonTest logFile = SingletonTest.returnInstanc(); //http://aspnettutorialonline.blogspot.com/
            logFile.Code = "http://aspnettutorialonline.blogspot.com/";

//singleton class having private constructor. 
    class SingletonTest
        private static SingletonTest singletonTest = null;
//creating a property
        private string code = string.Empty;

        private SingletonTest()
            code = string.Empty;

        public static SingletonTest returnInstanc()
//lazy initialization 
            if (singletonTest == null)
                singletonTest = new SingletonTest();
            return singletonTest;
//exposing property to the other classes.
        public string Code
            get { return code; }
            set { code = value; }

If you have any queries or suggestions, please fell free to ask in comments section.
Share this post :

Post a Comment

Please give your valuable feedback on this post. You can submit any ASP.NET article here. We will post that article in this website by your name.

Support : Ranga Rajesh Kumar
Copyright © 2012. ASP.NET Examples - All Rights Reserved
Site Designed by Ranga Rajesh Kumar