【发布时间】:2012-10-20 13:34:09
【问题描述】:
假设我有两个线程向stderr 或stdout 打印一些东西(相对较长),这两个流的函数在它们永远不会“交错”字符的意义上是线程安全的吗?因此,例如,如果我有“Hello, World”,我将永远不会得到“HHellllo,, WorldWorld”或其他任何交错?这适用于 x86、GCC、Linux > 3.0。
【问题讨论】:
-
@JensGustedt:我看到了,但它没有回答 both
stderr和stdout是否是线程安全的。在某处我读到stderr不是这种情况,我需要确定一下。 -
@DervinThunk 使用仅限书面语言的交流方式面临着挑战。多年前,我了解到如果人们没有从我写的东西中理解我的意思,我需要写得更清楚,而不是因为误读而责备他们。如果你想让每个人都知道你的问题是特别的和不同的,那就说清楚。你也会得到更好的答案。一个简单的“我知道 xyz,我已阅读 [link to other question],我在问 abc”通常可以解决问题。
标签: c linux multithreading concurrency multicore