设计模式
EmbededSwordman
这个作者很懒,什么都没留下…
展开
-
Singleton模式(上)
Singleton单例模式, 保证一个类仅有一个实例, 并且提供一个访问它的全局访问点.教科书式的Singleton模式:#include using namespace std;class Singleton{public: static Singleton *Instance (void) { if(m_pInstance == NULL) { m_pInstance = new Singleton原创 2010-07-01 20:22:00 · 745 阅读 · 0 评论 -
Singleton模式(下)
我们来看看利用Singlton模式来编程的几个细节.首先是线程安全问题, 我们的Instance方法只在第一次创建类的实例, 但是如果有两个线程同时访问Instance. 则存在潜在风险.来分析一下, 假设有两个线程A, B. 当A进入Instance(), 发现该对象还没有创建, 进入if()分支. 此时由于时间片到或者被抢占等原因, 线程A被挂起, 开始运行线程B. 此时B也调用Instance()同时也发现对象没有创建, 进入if()分支创建了一个类对象. 二当A线程再次运行回来的时候它会再创建一个类原创 2010-07-03 09:56:00 · 673 阅读 · 0 评论