问题
在设计模式中,有一个很经典的模式-单例模式,它可能是实现上最简单的模式,在代码中也经常使用,在单线程下,毫无疑问延迟化加载是比较常用的,但是在多线程条件下,单例模式的延迟加载可能就会出现一些问题。
如以下的代码:
T* GetInstance()
{
if (pInst == NULL)
{
pInst = new T;
}
return pInst
问题
在设计模式中,有一个很经典的模式-单例模式,它可能是实现上最简单的模式,在代码中也经常使用,在单线程下,毫无疑问延迟化加载是比较常用的,但是在多线程条件下,单例模式的延迟加载可能就会出现一些问题。
如以下的代码:
T* GetInstance()
{
if (pInst == NULL)
{
pInst = new T;
}
return pInst