我如何使任何c++库都是线程安全的
How do I make any C++ library I make thread safe?
首先,我对c++相当有经验,了解线程和线程同步的基础知识。我也想写一个自定义内存分配器作为我的一个宠物项目,并且已经读到它们应该是线程安全的。
我知道"线程安全"是什么意思,但是我不知道如何使c++代码线程安全。
有关于如何使代码线程安全的实际例子或教程吗?在内存分配器场景中,它是否本质上确保所有变化的函数都被标记为临界区?还是另有隐情?
与所有线程问题相同:确保当一个线程更改某些内容时,没有其他线程正在访问它。对于内存分配系统,我认为您需要一种方法来确保您不会同时将相同的内存块分配给2个线程。是包装整个搜索,还是允许多个搜索,但在更新分配表时锁定(这可能导致搜索结果无效,需要进行另一次搜索),这取决于您。
相关文章:
- 如何将元素添加到数组的线程安全函数?
- C++中的线程安全删除
- 在std::thread中,joinable()然后join()线程安全吗
- 在c++队列中使用pop和visit实现线程安全
- 以线程安全的方式调用"QQuickPaintedItem::updateImage(const QImage&image)"(no QThread)
- 全局变量 多读取器 一个写入器多线程安全?
- 共享队列的线程安全
- boost::文件系统::recursive_directory_iterator多线程安全
- 以线程安全的方式转换 C/C++ 中时区名称字符串的时区偏移量
- 线程安全运算符<<
- 如何使缓存线程安全
- C++线程安全:如果只有一个线程可以写入非原子变量,但多个线程从中读取. 会遇到问题吗?
- 提升精神 V2 Qi 语法线程安全吗?
- asio 链对象线程安全吗?
- 线程安全队列 c++
- 提供对不同类型的数据(建议、代码审查)的线程安全访问的类
- 如何以线程安全的方式更改目录?
- 线程安全的引用计数队列C++
- 析构函数和线程安全
- 适用于大型数组的无复制线程安全环形缓冲区