我喜欢将每个线程的stdout输出重定向到一个文件。下面的代码将所有线程输出重定向到单个文件-
int fd = open(<filename_threadid.txt>, <flags>)
_dup2(fd, 1)我应该如何恢复原始的标准输出,以便下一个线程能够可靠地将其标准输出映射到filename_threadid?
发布于 2011-07-25 10:02:10
在所有平台上,standard streams (stdin、stdout、stderr)是每个进程的。因此,它们不能针对每个线程进行重定向。您应该修改代码,使每个线程输出到一个特定的文件,而不是stdout。
https://stackoverflow.com/questions/6811132
复制相似问题