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

为什么C++标准库中atomic shared_ptr不是lockfree实现?

为什么C++标准库中atomic shared_ptr不是lockfree实现?


shared_ptr 做成 lock_free,应该是没有技术上的可行性。shared_ptr 比一个指针要大不少:最近很多小伙伴找我,说想要一些C++的资料,然后我根据自己从业十年经验,熬夜搞了几个通宵,精心整理了一份「C++资料从专业入门到高级教程+工具包」,点个关注,全部无偿共享给大家!!!

评论区回复“888”,关注我之后私信回复“666”,即可拿走。

1. 它可以是一个指向成员函数的指针,这货通常比普通指针大一些,有可能大50%或100%,看平台与实现吧;

2. 它可以有自定的释放函数,又多一个指针;

3. 它支持观察者,这个不会是无代价的。

总之,share_ptr 的体积不小,不太可能有哪个平台能够支持这种体量的无锁原子操作。至于自旋锁之类,肯定是不能通用的,否则死锁了算谁的?

f4eabf2a081f507a6128e11e0c97a96e.jpeg

http://www.lryc.cn/news/234194.html

相关文章:

  • Python基础入门例程58-NP58 找到HR(循环语句)
  • 航天联志Aisino-AISINO26081R服务器通过调BIOS用U盘重新做系统(windows系统通用)
  • windows 10 更新永久关闭
  • 循环优先级仲裁~位屏蔽仲裁算法
  • 千年版本修改小技巧
  • 教学过程中可以实施哪些考核评价方式?
  • MyBatis查询数据库(全是精髓)
  • elementPlus+vue3引入icon图标
  • Spring框架中的bean管理(XML和注解及属性的注入)
  • MySQL 存储过程提高数据库效率和可维护性
  • JAXB的XmlElement注解
  • 竞赛选题 深度学习驾驶行为状态检测系统(疲劳 抽烟 喝水 玩手机) - opencv python
  • 59 权限提升-Win溢出漏洞及ATSCPS提权
  • 【新闻稿】Solv 与 zCloak 联合开发跨境贸易场景下可编程数字凭证项目,获得新加坡、加纳两国央行支持...
  • requests库进行爬虫ip请求时遇到的错误解决方法
  • 目标检测—YOLO系列(二 ) 全面解读论文与复现代码YOLOv1 PyTorch
  • Redis维护缓存的方案选择
  • LeetCode236. Lowest Common Ancestor of a Binary Tree
  • 基于Gin+Gorm框架搭建MVC模式的Go语言企业级后端系统
  • 【开源】基于Vue和SpringBoot的固始鹅块销售系统
  • Windows11怎样投屏到电视上?
  • ubuntu中用docker部署jenkins,并和码云实现自动化部署
  • for,while,do-while,死循环,嵌套循环,跳转关键字,随机数
  • 【六袆 - MySQL】SQL优化;Explain SQL执行计划分析;
  • 【AI视野·今日NLP 自然语言处理论文速览 第六十二期】Wed, 25 Oct 2023
  • 各种符号地址,可以直接复制粘贴使用
  • C语言测试题:用冒泡法对输入的10个字符由小到大排序 ,要求数组做为函数参数。
  • uni-app开发微信小程序 vue3写法添加pinia
  • centos三台主机配置互信ssh登录
  • 验证码案例 —— Kaptcha 插件介绍 后端生成验证码,前端展示并进行session验证(带完整前后端源码)