单例模式。草稿
单例模式
结论:
1)全局变量是最简单,稍微有缺陷的单例模式。如: FileStream FS_TestFile("text.txt");但是需要到处extern.所有用类来的话,比较方便。
2)可以用一个函数或类的静态成员方法,返回局部静态对象的指针,实现单例模式。线程安全,但是没办法释放。只能等程序结束了。多线程释放感觉不太方便,要根据场景来。可以提供一个释放的方法。有把握就释放吧。否则等程序结束。
class LogSing { public: static AsynLog* CreateLog() { if(mylog==0) { mtx.lock(); if(mylog==0) { mylog= new AsynLog(20*1024*1024,4); } mtx.unlock(); } return mylog; } void Destroyit() { if(mylog!=0) { delete mylog; } } private: static mutex mtx; static AsynLog * mylog; };

浙公网安备 33010602011771号