繁体   English   中英

boost :: dynamic_bitset多线程问题

[英]boost::dynamic_bitset multi thread issue

我使用boost :: dynamic_bitset来跟踪几个tcp连接。 如果已连接,则将其设置为1,否则将其设置为0。每个连接为一个线程。 我是否需要保护位集免受多线程影响? 还是没有必要,因为它在创建后不会修改位集的大小?

在位集中工作时实际上只操作单个位是非常罕见的。 通常发生以下情况:

  1. 加载x个字节(x取决于您的计算机和实际的实现)
  2. 处理这些字节中的特定位
  3. 将x字节保存在位集的容器中。

这不是特定于boost::dynamic_bitset ,它还涉及例如std::bitset 在这种情况下,您应该始终查看文档。 由于文档中没有提及显式的线程安全性,因此您可能会遇到竞争状况。

因此,您应该保护自己的位。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM