2
我有寫入/讀取數據到文件的C++程序(turbo C++版本3)。 當程序的多個實例運行,並在執行的特定點上,當打開該程序的兩個實例寫入同一時刻的文件,一些信息會丟失C++文件同步問題
if(!filein)
不適合這種情況。它與同步一個問題,我想
有什麼辦法,如果該文件被打開或不執行任何操作之前
謝謝
我有寫入/讀取數據到文件的C++程序(turbo C++版本3)。 當程序的多個實例運行,並在執行的特定點上,當打開該程序的兩個實例寫入同一時刻的文件,一些信息會丟失C++文件同步問題
if(!filein)
不適合這種情況。它與同步一個問題,我想
有什麼辦法,如果該文件被打開或不執行任何操作之前
謝謝
如果您有可用升壓那麼最簡單/最好的,我可以檢查方式是使用boost::interprocess::file_lock
(docs)
將互斥體嵌入到文件本身中請發佈更多代碼。就像用來打開文件的代碼一樣。 – sqreept
您需要文件鎖定,這在標準庫中沒有實現。看到這個問題:http://stackoverflow.com/q/839856/1175253 – Sam
你需要一個互斥來協調對文件的訪問。你可以使用操作系統API嗎?如果是這樣,你的目標是什麼平臺? –