C#中的延时加载Lazy(Of T)

.Net提供了一个叫Lazy<T>的对象,可以让我们很方便的延时创建大型或消耗资源的对象,可以很好的提高应用程序的性能。

static void Main(string[] args)
 {

           Lazy<TestLazy> lazy = new Lazy<TestLazy>(); //封装要延时加载的对象 

            Console.WriteLine("创建Lazy对象");

            Console.WriteLine("是否创建对象:" + lazy.IsValueCreated);

            lazy.Value.Execute();   //调用对象中的方法           
            Console.Read();

}

 public class TestLazy
    {
        public TestLazy()
        {
            Console.WriteLine("Constructs lazy object!");
        }

        public void Execute()
        {
            Console.WriteLine("Executing...");
        }
    }

默认设置下,这个类的所有成员都是线程安全的。我们可以很方便的使用这个类实现对某个对象的延迟加载。

转自:http://zhxh1012.blog.163.com/blog/static/1408664572011854306978/

原文地址:https://www.cnblogs.com/caok168/p/2826301.html