欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#多線程Singleton(單件)模式模板

 更新時(shí)間:2012年02月24日 11:28:38   作者:  
下面是一個(gè)C#多線程單件模式的代碼模板。把T換成你自己的類型就可以使用了。其精妙之處就在于用lock語句鎖定資源來避免多線程同時(shí)走入if語句去創(chuàng)建多個(gè)對(duì)象
復(fù)制代碼 代碼如下:

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;
}
}

在必要的時(shí)候需如果要刷新當(dāng)前instance,可以這樣寫:
復(fù)制代碼 代碼如下:

public static void RefreshInstance()
{
_instance = new T();
}

相關(guān)文章

最新評(píng)論