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

专门做水产海鲜的网站吗营销成功案例

专门做水产海鲜的网站吗,营销成功案例,苏州注册公司地址,户网站建设的不全.文章目录 1.单例模式的特点#x1f60a;2.单例模式两种实现#x1f923;#x1f917;#x1f60a;2.1 饿汉式2.2 懒汉式 3.传统单例模式的线程安全问题4.解决方法4.1静态局部变量4.2加锁4.3双重检查锁#xff08;DCL#xff09;4.4pthread_once 1.单例模式的特点#x1… 文章目录 1.单例模式的特点2.单例模式两种实现2.1 饿汉式2.2 懒汉式 3.传统单例模式的线程安全问题4.解决方法4.1静态局部变量4.2加锁4.3双重检查锁DCL4.4pthread_once 1.单例模式的特点 1.全局只有一个类的static实例存在 2.不允许直接实例化构造函数为私有的只通过一个类的静态方法获取该实例 2.单例模式两种实现 2.1 饿汉式 饿汉式是在类加载的时候就会创造实例会造成资源的浪费。 具体内部先定义并初始化好了一个静态实例。获取方法中直接返回实例。 特点线程安全会造成资源浪费 实现 class Singleton { private:static Singleton instance;// 私有构造函数防止类外实例化对象Singleton() {}public:// 获取实例的静态方法static Singleton getInstance() {return instance;}// 其他成员函数void doSomething() {// do something} };// 静态成员变量需要在类外初始化 Singleton Singleton::instance;int main() {// 获取单例对象实例Singleton singleton Singleton::getInstance();// 调用单例对象的方法singleton.doSomething();return 0; } 2.2 懒汉式 懒汉式是在需要时才创建实例通过获取实例方法获取实例。 具体内部定义一个静态实例获取方法中判断实例是否为空空则初始化实例否则返回该实例 特点避免资源浪费造成线程安全问题。 实现 class Singleton { private:// 静态成员变量用于保存单例实例static Singleton* instance;// 构造函数私有化防止外部创建实例Singleton() {}public:// 静态成员函数用于获取单例实例static Singleton* getInstance() {// 判断实例是否为空如果为空则创建实例if (instance nullptr) {instance new Singleton();}return instance;}// 删除拷贝构造函数和拷贝赋值运算符防止被复制Singleton(const Singleton) delete;Singleton operator(const Singleton) delete; };Singleton* Singleton::instance nullptr; // 初始化静态成员变量int main() {// 获取单例实例Singleton* singleton1 Singleton::getInstance();Singleton* singleton2 Singleton::getInstance();// 判断两个实例是否相同if (singleton1 singleton2) {cout 两个实例相同 endl;} else {cout 两个实例不相同 endl;}return 0; } 3.传统单例模式的线程安全问题 饿汉式是线程安全的懒汉式不是 当多线程执行getInstance时候如果线程A判断当前实例为空线程B正好判断到也为空就会申请资源当线程A恢复了后继续执行也会申请内存空间就会出现两个实例这就会出现问题 4.解决方法 4.1静态局部变量 class Singleton { private:Singleton() {}public:static Singleton* getInstance() {static Singleton instance;return instance;} }; 4.2加锁 class Singleton { private:// 静态成员变量用于保存单例实例static Singleton* instance;// 构造函数私有化防止外部创建实例Singleton() {}public:// 静态成员函数用于获取单例实例static Singleton* getInstance() {// 判断实例是否为空如果为空则创建实例Mutexlock lock(mutex);//加锁if (instance nullptr) {instance new Singleton();}return instance;}// 删除拷贝构造函数和拷贝赋值运算符防止被复制Singleton(const Singleton) delete;Singleton operator(const Singleton) delete; };Singleton* Singleton::instance nullptr; // 初始化静态成员变量int main() {// 获取单例实例Singleton* singleton1 Singleton::getInstance();Singleton* singleton2 Singleton::getInstance();// 判断两个实例是否相同if (singleton1 singleton2) {cout 两个实例相同 endl;} else {cout 两个实例不相同 endl;}return 0; }4.3双重检查锁DCL class Singleton { private:// 静态成员变量用于保存单例实例static Singleton* instance;// 构造函数私有化防止外部创建实例Singleton() {}public:// 静态成员函数用于获取单例实例static Singleton* getInstance() {// 判断实例是否为空如果为空则创建实例if (instance nullptr) {Mutexlock lock(mutex);if(instancenullptr)instance new Singleton();}return instance;}// 删除拷贝构造函数和拷贝赋值运算符防止被复制Singleton(const Singleton) delete;Singleton operator(const Singleton) delete; };Singleton* Singleton::instance nullptr; // 初始化静态成员变量int main() {// 获取单例实例Singleton* singleton1 Singleton::getInstance();Singleton* singleton2 Singleton::getInstance();// 判断两个实例是否相同if (singleton1 singleton2) {cout 两个实例相同 endl;} else {cout 两个实例不相同 endl;}return 0; }4.4pthread_once #includeiostream class singleton{ public: static singleton getinstance() { pthread_once(ponce,init);//保证该函数只被执行一次 return instance; } private: static void init() { instancenew singleton(); } singleton(){} ~singleton(){} static pthread_once_t ponce; static singleton* instance; }; singleton::poncePTHREAD_ONCE_INIT; singleton::instancenullptr;
http://www.dnsts.com.cn/news/17771.html

相关文章:

  • 机械厂做网站到底有没有效果杭州网站开发招聘
  • 涿州规划建设局网站网站开发过程及要点
  • 外贸网站建站网站负责人 主体负责人
  • 镇平微网站建设百度网站小程序怎么做
  • html做的图片网站app平台开发费用
  • 快手直播间挂人气自助网站文章类网站程序
  • 天娇易业网站建设公司cms客户管理系统程序源码
  • 网站开发所需配置打开app查看全部
  • 购物网站建设基本流程树状图php视频转码
  • 网站安全防护措施手机开发人员选项在哪
  • emlog做企业网站哪类型网站容易做
  • 网站备案个人承诺书怎么用iapp做网站软件
  • 商洛网站建设建域名做网站
  • 苏州做网站公司哪家比较好安徽网站建设优化推广
  • 食品网站的建设背景网站模版建站
  • 中文网站编辑杭州滨江区抖音seo行情
  • 选择赣州网站建设网络工程专业毕业设计论文
  • 减少WordPress跳转杭州做网站优化
  • 网站后台这么做视频教程网站设计分析案例
  • 建设项目网站wap网站发布
  • 企业网站建设_秒搜wordpress手机菜单栏
  • 苏州建设培训中心网站入门网站建设
  • 做网站运营工作流程舟山建设工程信息网站
  • 廊坊购物网站开发设计上海网络推广培训学校
  • 湖州网站设计平台葫芦岛市住房和城乡建设局网站
  • 怀化网站建设有哪些免费网站下载app软件免费
  • 网站建设大概价格广东seo推广哪里好
  • 网站后台编辑技巧专业国外网站建设
  • 网站开发接口文档模板网上推广招聘
  • 专业做网站有哪些查询注册过的网站