static void Main(string[] args) { Singleton1 s1 = Singleton1.GetInstance(); s1.Name = "张三"; Singleton2 s2 = Singleton2.GetInStance(); s2.Name = "王五"; Console.WriteLine(s1.Name); Console.WriteLine(s2.Name); Console.ReadKey(); }
public static Singleton1 getInstance() { //双重if+lock,第一个if是为了避免每次都加锁,提升效率 //第二个if是为了多线程安全 if (instance == null) { lock (obj) { if (instance == null) { instance = new Singleton1(); } } } return(instance); }
private void button1_Click(object sender, EventArgs e) { Singleton1 single1 = Singleton1.getInstance(); }