【发布时间】:2014-12-11 15:43:53
【问题描述】:
我正在开发 MMORPG,只是想听听将信息(在本例中为游戏日志)存储到文件之间的两个不同论点。
将信息创建到文件中时输出会更好吗(我们可能每隔几秒钟谈论 10-30 个条目,或者将其存储在内存中直到程序关闭,然后转储所有信息在它终止之前放入一个文件中。
我可以看到两端的争论主要是如果我们将它保存在内存中,它将开始占用计算机端的大量资源,如果我们等到程序关闭以及程序关闭的任何原因由于崩溃而崩溃并且信息没有保存,从 MMORPG 的角度来看,这将是非常糟糕的......另一方面,我确信每次写入文件通常也不是很有效。 ..
我在 C++ 中完成所有这些操作。
【问题讨论】:
-
如果您的程序崩溃,您会丢失日志。这可能是你转储信息的唯一地方,告诉你它为什么崩溃......
-
别担心。无论如何,操作系统都会在内存中缓冲您的大部分写入(除非您正在同步磁盘),因此“每隔几秒”您的 20-30 次写入不会对盘片造成重大负担。除非并且直到您真正观察到问题,否则您不应该担心磁盘写入的效率。尽快将数据写入磁盘。