【发布时间】:2017-11-24 22:33:40
【问题描述】:
新的C++20 std::osyncstream(http://en.cppreference.com/w/cpp/io/basic_osyncstream)有什么用? std::ostream 不是已经是线程安全的了吗?
【问题讨论】:
新的C++20 std::osyncstream(http://en.cppreference.com/w/cpp/io/basic_osyncstream)有什么用? std::ostream 不是已经是线程安全的了吗?
【问题讨论】:
根据How to easily make std::cout thread-safe?
看起来它不是线程安全的。他们甚至(该问题的第一个答案)建议制作一个包装器,这基本上是 std::osyncstream 提供的。
【讨论】:
以原子方式从不同线程写入日志文件或std::cout。
这是我首先想到的。
在这种情况下,写入的数据不会交错或乱码。
【讨论】: