博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
单体模式singleton
阅读量:4154 次
发布时间:2019-05-25

本文共 545 字,大约阅读时间需要 1 分钟。

在c++实现单体模式和c#,java有些不同

.h

class Param{public:		static Param& GetIntance()	{		return m_param;	}		static Param m_param;}
.cpp

Param Param::m_param;

看起来比高级语言的单体模式还简单,不用考虑到多线程的问题

如果要求返回指针呢?

//头文件
class Singleton
{


private:
  static Singleton *s_instance;
public:
  static Singleton* instance();
}

Singleton* Singleton::instance() { 	if (!s_instance) 	{   		boost::mutex::unique_lock lock(your_mutex); //假设用boost的lock   		if(!s_instance) //双重检测		{        			s_instance = new Singleton;     		}	}    	return s_instance; }

如此高效的避免了,在多线程模式下可能产生多个实例的现象

 写得很不错

转载地址:http://tieti.baihongyu.com/

你可能感兴趣的文章
网站优化之使用Free marker静态化网站文章页
查看>>
mysql免安装版配置和一些常见问题
查看>>
Tomcat配置域名、ip访问及解决80端口冲突
查看>>
详解Java反射机制
查看>>
网站优化之Tomcat启用Gzip压缩
查看>>
Linux下mysql的彻底卸载
查看>>
python爬虫解决极验验证码问题
查看>>
使用JS将table表格导出为excel
查看>>
java调用阿里云短信服务接口
查看>>
idea的个性配置
查看>>
Java获取访问者Ip并限制Ip访问页面
查看>>
Java读取src下配置文件的问题
查看>>
网页加载时waiting(TTFB)时间过长的问题解决
查看>>
Java时间日期相关工具类
查看>>
JS使用OSS上传文件遇到的一些问题
查看>>
个人博客写了两年
查看>>
博客添加评论功能
查看>>
VMware Ubuntu安装教程(详细过程)
查看>>
Java新手的通病
查看>>
Java虚拟机知识汇总,Jvm面试必问
查看>>