有时,我的应用程序抛出一个异常,说明该文件已损坏或不可编辑。基本上这个文件是一个日志文件。我的应用程序将事件和一些数据写入日志文件。
我的应用程序被放到了Windows操作系统runs.The的嵌入式盒中,关闭应用程序的唯一方法是关闭嵌入式盒的电源。由于窗口没有正常关闭,文件有时会损坏(这就是我所想的)。
我正在使用Intel SSD作为驱动程序,我已经启用了磁盘上的写缓存。这会导致文件损坏吗?
如果捕获异常,那么我可以使用c#文件函数(file.delete)删除这个文件吗?
问候
发布于 2011-05-05 23:31:07
写缓存不会导致文件损坏。在打开文件时关闭机器会导致文件损坏。
如果捕获异常,则应该能够删除该文件。
当您在日志文件上写入Flush时,您可能会减少错误发生的频率。如果在每次写入之后关闭文件(当然,这需要在每次写入之前打开文件以供追加),那么几乎可以完全消除错误。这可能要贵得令人望而却步。
只要关闭应用程序的唯一方法是删除电源,就不能完全消除错误。但是,您可能会考虑旋转日志,因此,如果日志确实损坏了,则只会损失最后一个小时(或15分钟,或用于日志旋转频率的任何时间)。
https://stackoverflow.com/questions/5904966
复制相似问题