我想根据当前的标准和C++ 0x以及实际情况(通常来说,但在我的情况下使用gcc 4.5.1 )。C++线程安全摘要
对于STL容器,我的理解是,根据当前标准,不保证线程安全性。这是真的,但实际上它们对于单个作者,多读者使用(在gcc和可能是最现代的编译器)是线程安全的?这是由C++ 11保证的吗?
POD类型呢?我知道这个标准没有任何保证,但我被告知,在实践中,所有人都是线程安全的阅读和写作。当然,即使像增量运算符这样简单的东西可能仍然需要同步,因为可能有多个读取和写入。
我主要对答案感兴趣,但答案背后的原因将被赞赏。
在当前的C++标准中没有“线程”或“线程安全”的概念。 – 2011-03-21 17:35:01
关于这种线程安全性的问题,没有任何关于“线程安全”的含义的说明基本上是不可能回答的。必读:[你称之为“线程安全”的东西是什么(http://blogs.msdn.com/b/ericlippert/archive/2009/10/19/what-is-this-thing-you-call-线程safe.aspx)。 – 2011-03-21 17:35:23
@David:伟大的文章,谢谢:) – 2011-03-21 17:45:05