C#多线程Singleton(单件)模式模板

时间:2022-09-17 23:00:42

代码如下:


private static volatile T _instance = null; 
private static object objLock = new Object(); 
private T() 


public static T Instance 

get 

if (_instance == null) 

lock (objLock) 

if (_instance == null) 

_instance = new T(); 



return _instance; 


在必要的时候需如果要刷新当前instance,可以这样写: 

复制代码代码如下:


public static void RefreshInstance() 

_instance = new T();