0
我正在寫一個時間關鍵的應用程序在C++中,我寫數據到一個不斷顯示和更新在Web瀏覽器中的日誌(我不能改變這一點,請不要推薦使用不同的解決方案)。保持一個潛在的文件句柄
目前,我做這樣的事情每100ms轉儲數據(整個文件必須重寫每個轉儲):
ofstream log_file(log_path);
//Do some error handling
log_file << "Quite some data" << endl;
log_file.close();
的問題是,每隔幾個調用程序需要像〜20毫秒來打開日誌,它似乎會導致一些系統上的很多硬盤使用情況(我懷疑硬盤在每次重新打開過程中都會再次搜索該文件)。
是否有辦法讓文件句柄始終保持打開狀態,以便系統有希望保留一些指向文件的指針,以儘量減少延遲和硬盤使用情況?如果需要,我會很樂意切換到不同的寫入API。
也許我應該說這是一個Windows應用程序。 – Listing
@上場哦,夠公平的。 –
那麼這個想法仍然很好,我環顧四周,找到了一種方法來做到這一點,所以這仍然回答我的問題。 – Listing