命名(通用)线程安全的数据结构
Naming (general purpose) thread-safe data structures?
我正在寻找一个好名字给线程安全/内部同步的数据结构。
c++标准使用术语atomic
,但是atomic有一些相当特殊的含义。微软在他们的线程安全集合中使用术语Concurrent
(或在并行容器中使用c++ _concurrent
)。
我真正想要的是一个(值)类型的通用包装器,它提供与std::atomics类似的一组操作,但具有不同的名称,并从它派生出一些类型。(用例:类似std::atomic的std::string)
你认为下列哪个有用/没用,为什么?
-
SynchronizedThingamajig
(或thingamajig_synchronized
或synchronized_thingamajig
) -
Concurrent...
-
ThreadSafe...
-
Safe...
-
Parallel...
-
Locked...
-
Mutex
…或Mutexed...
-
Multithreaded...
对于我给出的字符串示例,也许synchronized_string
或concurrent_string
会最有意义,或者会与任何其他内涵冲突吗?
来自评论的有用答案:
Microsoft PPL和Intel TBB都使用
concurrent_*
。我唯一的建议是:当你说并行时,不要使用并行。(平行是一种并发性,但这些数据结构应该工作吗在单个处理器上对多个线程进行时间复用。)你可能会还要查看监视器模式。
——流浪逻辑6月18日12:02
我可能会补充说,从我给出的选择中,经过更多的思考,只有concurrent
和synchronized
似乎是有意义的。
我觉得你应该试试这个名字:
SafeContainer
相关文章:
- 链表,反向函数,数据结构
- 如何使用set实现无序数据结构?
- 我们可以将数据永久保存为数据结构吗?
- C++中的可变长度数组/数据结构
- 用于存储由空格分隔的字符串的 C++/C 数据结构
- 通过 NIF 从C++返回自定义数据结构
- 编译器上的策略数据结构不起作用
- 尝试构建"lock-free"数据结构C++
- 设计将引用元素移动到开头的数据结构.C++
- 在学习数据结构之前对STL有一个了解是好的吗?
- 如何解析表示树状数据结构的字符串
- 我对数据结构、双向链表有一些问题
- googletest:测试太大的数据结构
- C++中deque数据结构的大O是什么?
- 我可以使用哪种数据结构来处理这种方式
- 将文本文件解析为树状数据结构
- C++ 中具有 O(1) 搜索时间复杂度的数据结构
- 线程安全数据结构类的用途是什么
- 命名(通用)线程安全的数据结构
- 用于保存客户端信息的安全数据结构