我有代碼,其中運行大量循環更新單個字符串。 最後我希望該字符串被存儲在一個文件中。將字符串寫入文件的最高性能方法是什麼?
目前我正在將該字符串打印到控制檯。 我可以使用ofstream
並將其寫入文件而不是控制檯。
- 而不是使用一個字符串進行更新,使用直接文件流
- 使用字符串流,而不是最後複製串流文件 流和寫入文件。
- 字符串更新完成後,我應該一次寫入文件流 。
在我的編譯器std::string::max_size
是:4294967257 而字符串,我可以產生的最大尺寸大約是編譯器的max_size
的一半。
注意:我正在使用Solaris Unix。
將此字符串寫入文件的最高性能方法是什麼?
這將取決於你的環境;操作系統,可用內存,字符串的大小,你的代碼如何更新字符串... 如果字符串的大小比內存小得多,我認爲1或2是最好的。 – kamae
字符串有多大,你需要多長時間寫一次? –
如果性能是你最關心的,直接使用C文件IO是最佳選擇。 – oldmonk