当前位置: 首页 > news >正文

网站做线支付平台系统多少钱虚拟机可以做多个网站

网站做线支付平台系统多少钱,虚拟机可以做多个网站,网页制作实战视频,安装app软件单例模式在C中的实现方式有以下几种: 懒汉式(线程不安全)饿汉式(线程安全)双检锁/双重校验锁(DCL,线程安全)静态局部变量(线程安全)C11版本(线程…

单例模式在C++中的实现方式有以下几种:

  1. 懒汉式(线程不安全)
  2. 饿汉式(线程安全)
  3. 双检锁/双重校验锁(DCL,线程安全)
  4. 静态局部变量(线程安全)
  5. C++11版本(线程安全)

下面分别给出这五种实现方式的代码示例和解释。

懒汉式(线程不安全)

class Singleton {
public:static Singleton* getInstance() {if (instance == nullptr) {instance = new Singleton();}return instance;}private:Singleton() {}static Singleton* instance;
};Singleton* Singleton::instance = nullptr;

解释:这种方式是在第一次调用getInstance()方法时才创建实例,但是这种方式在多线程环境下是不安全的,可能会出现多个实例。

饿汉式(线程安全)

class Singleton {
public:static Singleton* getInstance() {return instance;}private:Singleton() {}static Singleton* instance;
};Singleton* Singleton::instance = new Singleton();

双检锁/双重校验锁(DCL,线程安全)

#include <mutex>class Singleton {
public:static Singleton* getInstance() {if (instance == nullptr) {std::unique_lock<std::mutex> lock(mutex);if (instance == nullptr) {instance = new Singleton();}}return instance;}private:Singleton() {}static Singleton* instance;static std::mutex mutex;
};Singleton* Singleton::instance = nullptr;
std::mutex Singleton::mutex;

解释:这种方式是在第一次检查实例是否为空时加锁,再次检查实例是否为空时不加锁,这样可以减少锁的开销,提高性能。

静态局部变量(线程安全)

class Singleton {
public:static Singleton& getInstance() {static Singleton instance;return instance;}private:Singleton() {}
};

解释:这种方式利用了C++11的特性,将实例定义为静态局部变量,这样在程序结束时会自动销毁实例,避免了资源泄露。同时,这种方式也是线程安全的。

C++11版本(线程安全)

#include <mutex>class Singleton {
public:static Singleton& getInstance() {std::call_once(initInstanceFlag, &Singleton::initInstance);return *instance;}private:Singleton() {}static void initInstance() {instance = new Singleton();}static Singleton* instance;static std::once_flag initInstanceFlag;
};Singleton* Singleton::instance = nullptr;
std::once_flag Singleton::initInstanceFlag;

解释:这种方式利用了C++11的std::call_once和std::once_flag来实现线程安全的单例模式,确保只初始化一次实例。

http://www.yayakq.cn/news/261854/

相关文章:

  • 固始县住房和城乡建设局网站企业网站开发价
  • 海参企业网站怎么做wordpress个人建站教程
  • 麒贺丝网做的网站优化做网站需要域名
  • 商城网站的建设定位网站布局框架
  • 商汇通网站wordpress调用html代码
  • 盐田做网站的公司自己做影视会员网站
  • 360度搜索建站网北京星光灿烂影视有限公司
  • 好的设计网站中国十大建筑公司
  • 在哪个网站上做预收款报告代理公司注册的价格
  • 徐州建站费用电商后台管理网站模板
  • 网站建设审核需要多长时间网站建设公司 经营资质
  • 网站手机缩放用php做网站后台
  • 网站制作文章标签手机网站如何做才能兼容性各种手机
  • 曲靖手机网站建设wordpress 后台不显示
  • 怀化网站建设企业黑龙江 俄语网站制作
  • asp公司企业网站模板源代码网站的引导页面是什么意思
  • 网站建设的展望 视频海外网站如何做用户实名认证
  • 做卖挖掘机的网站怎么选择五屏网站建设
  • 东莞官方网站设计windows最新一代
  • 花生壳怎么发布自己做的网站轻淘客一键做网站
  • 自己做网站要办手续吗手工制作盲盒
  • 企业查询网站企查查无极磁铁网站
  • 一级a做爰片免费观看 安全网站seo外链怎么做
  • 网站导航栏动效怎么做网站建设是不是要有营业执照
  • 江门网站优化公司在线制作图片影集
  • 网站域名使用费学室内设计后悔了
  • 鄂州网警广州官网优化
  • 扩展名网站佛山网站建设开发
  • HTMT超链接网站怎么做徐州建设工程公共资源交易平台
  • php网站后台国际网站排名查询