百科问答小站 logo
百科问答小站 font logo



如何修改shared_ptr智能指针,让他支持多线程? 第1页

  

user avatar   pwq1989 网友的相关建议: 
      

反对匿名用户的答案,(boost或C++11的)shared_ptr不是线程安全的,读安全,写不安全

最简单的方法就是给shared_ptr用锁保护,因为如果想要修改shared_ptr内部的实现来支持多线程,写操作时会涉及到多个地址的更改,用简单的单地址的CAS也是做不到的。所以,不想使用锁的话,最好对shared_ptr只读不写

===========================

放嘲讽:下面答案和评论的知友们,你们真的明白什么是线程安全和线程不安全嘛 =。=




  

相关话题

  为什么叫.NET?它和C#是什么关系? 
  Golang 为什么要发布一个新的字体? 
  Qt 为什么在桌面应用(Windows 平台)中不流行呢? 
  如何入门 Python 爬虫? 
  java学成什么样子可以出去实习? 
  上古时期的程序员都有哪些当今普通程序员无法想象的神级操作? 
  for(int i = 0; ; i++); printf("i love you"); 请问这条代码是什么意思,可以运行出什么结果? 
  .Net core 自旋锁 vs Lock statement/Monitor 的开销在哪? 
  你见过的最想笑的,最奇葩的,最逗逼的代码是什么? 
  cpp是不是最方便研究算法的语言? 

前一个讨论
婆婆跳楼逼儿媳堕女胎 引发的问题,男人应该如何回答?
下一个讨论
租一辈子房会不会后悔?





© 2025-04-05 - tinynew.org. All Rights Reserved.
© 2025-04-05 - tinynew.org. 保留所有权利