我正在寻找一个好的名称,用于指代线程安全/内部同步的数据结构。
C++标准使用术语“atomic”,但atomic有一些特殊的含义。Microsoft在其Thread-Safe Collections中使用术语“Concurrent”(或在C++中使用
我真正想要的是一个通用的包装器,用于提供类似于std::atomic的一组操作,但具有不同的名称和一些派生自它的typedefs。(用例:像std::atomic for std::string这样的东西)
以下哪个您认为有用/无用,为什么?
C++标准使用术语“atomic”,但atomic有一些特殊的含义。Microsoft在其Thread-Safe Collections中使用术语“Concurrent”(或在C++中使用
_concurrent
在Parallel Containers中)。我真正想要的是一个通用的包装器,用于提供类似于std::atomic的一组操作,但具有不同的名称和一些派生自它的typedefs。(用例:像std::atomic for std::string这样的东西)
以下哪个您认为有用/无用,为什么?
SynchronizedThingamajig
(或thingamajig_synchronized
或synchronized_thingamajig
)Concurrent...
(并发的...)ThreadSafe...
(线程安全的...)Safe...
(安全的...)Parallel...
(并行的...)Locked...
(锁定的...)Mutex
... orMutexed...
(互斥的...)Multithreaded...
(多线程的...)
对于我给出的字符串示例,也许一个synchronized_string
或concurrent_string
会更有意义,但这是否会与其他内涵冲突呢?
concurrent_*
。我的建议是:当你想要表达并发时,不要使用parallel
。(Parallel
是一种并发方式,但这些数据结构应该可以在单个处理器上通过时间分片多个线程工作。) 你也可以看看monitor
。 - Wandering Logic