单例饿汉模式双检查锁相关问题

各位大佬好,本人小菜鸡一枚,最近刚接触了单例模式,关于懒汉式实现双检查锁,代码如下。有个小问题,既然调用get时如果不是nullptr就直接返回,那多线程调用时不就直接返回了该对象对其直接进行改变,不就没有同步性了。反过来如果在外部调用时,各个线程之间是互斥的来保证线程同步那是不是就没有加锁的必要了?很疑惑求各位大佬解答
全部评论
我理解的是,双锁保证的同步性主要指的是多线程get的时候返回的是同一个对象,避免两个线程都判断为nullptr都new了新对象的情况发生,至于后面使用这个对象的线程安全性就不是类里应该实现的了。
1
送花
回复
分享
发布于 04-02 22:38 北京

相关推荐

我们是谁:阿里巴巴淘天集团天猫品牌行业技术前端团队 团队优势:我们负责天猫家装、消费电子、运动户外、奢品等核心平台行业,以及多个自营业务,产品覆盖导购营销,以及面向家装、消电行业的物流、增值服务供应链解决方案,技术上涵盖导购营销、中后台、AI、3D导购、VR等。我们团队是一种具备端到端交付的偏全栈的前端团队,以前端为主,也有客户端、Java工程师,让我们能够技术驱动去落地各种想法,所以不光可以让你在前端技术深度上快速成长,也能够帮助你打开技术视野,一起去玩大模型、元数据驱动、低代码等。面向人群:24年11月至25年10月毕业的本科及以上学生招聘岗位:前端开发工程师转正机会:所有拿到实习offer的同学都有转正机会,阿里向来转正率极高岗位要求熟练使用各种Web前端技术,包括HTML(5)/CSS(3)/Javascript等,并有相关的项目开发经验或成果;熟悉前端工程化,用过git,gulp或webpack等工具,有自己的github仓库更优; 有NodeJS/Java开发经验、移动端开发经验; 深刻理解Web标准,对可用性、可访问性等相关知识有实际的了解; 对算法、数据结构、建模有一定了解; 关注新事物、新技术,有较强的学习能力,喜欢挑战,并且个性乐观开朗,逻辑性强,善于和各种背景的人合作。#前端实习#
投递阿里巴巴等公司10个岗位
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务