我正在研究一個程序,該程序使用多個std::ifstream
來讀取二進制文件,每個線程使用一個std::ifstream
。現在我需要知道,如果std::ofstream
在Windows和Linux上是線程安全的,用於寫入同一個文件。我正在使用僅使用一個std::ofstream
並用於多個線程。
我正在使用每個線程讀取不同的塊,並使用seekp()
和write()
將這些塊寫入輸出文件。目前它正在爲我工作,但它是否對大文件有問題。流屬性線程安全嗎?
是std::ofstream
線程安全嗎?
請看下面這將有助於 請通過此 http://stackoverflow.com/questions/2754303/is-stdifstream-thread-safe-lock-free – VDN
*的iostream *類是一個例外。從多個線程寫入對象是安全的。如果您不介意「這可能導致兩個線程的輸出混合在一起」。 – SChepurin
另請參閱[如何輕鬆使std :: cout線程安全嗎?](http://stackoverflow.com/q/14718124/1468366) – MvG