2014-02-25 67 views
-1

我想要一個功能,當我的應用程序崩潰時,已經寫入的日誌保存在日誌文件中。但使用cstdio庫中的fopen()/fwrite()似乎沒有這樣做。所以當我的應用程序崩潰時,日誌文件是0KB。我想知道是否有任何文件處理庫可以做到這一點?例如。促進?C++庫替換標準cstdio

+4

你有沒有試過'沖洗'?但是,這要麼有點寬泛,要麼「正在尋找工具,圖書館等」。 – crashmstr

回答

5

Classic XY question。解決方案是確保您的日誌文件被刷新,而不是切換到一些新的API,以期解決問題。

查閱fflush;當你想確保寫入提交到磁盤時調用它。

3

在每行輸出應該將內容讀入文件後調用fflush。儘管如此,它會顯着減緩產量。

你也可以檢查你的操作系統的本地I/O調用,但這不會是可移植的。