1.写个Lazy<T>的单例模式
public class SingleInstance{private static readonly Lazy<SingleInstance> instance = new Lazy<SingleInstance>(() => new SingleInstance());private SingleInstance(){}public static SingleInstance Instace => instance.Value;public void Test(){Console.WriteLine("Test");}}
2.单例模式会用在什么地方
数据库连接
日志
线程池管理
3.数据库连接释放如何进行
SqlConnection实例化的对象con
con.Close();
con.Dispose();
3.发布-订阅模式
发布的类定义一个delegate,定义一个event,两者访问权限与返回类型必须一致
发布的类实例化后
调用订阅者的方法,订阅者的方法的访问权限以及返回类型必须和代理一致
PublishDemo publishDemo = new PublishDemo();publishDemo.MyEvent += new SubscriberDemo().Write;publishDemo.Test("aaa");