文件耐久性设置

文件耐久性设置,第1张

概述文件耐久性设置

我正在开发一个ACID数据库软件产品,并对WinOS上的文件耐久性有一些疑问。

Createfile有两个属性, file_FLAG_WRITE_THROUGH和file_FLAG_NO_BUFFERING – 我是否需要这两个来实现文件的持久性(即覆盖所有types的磁盘或 *** 作系统文件caching)? 我问,因为他们似乎做同样的事情,并设置file_FLAG_NO_BUFFERING导致Writefile抛出一个ERROR_INVALID_ParaMETER错误。

在随机访问networking服务器上的文件时依次访问文件时的性能

tar文件使用-C选项和通配符

Java无法删除“C:”驱动器上的文件

如何在bash文件夹中的每个文件的开头添加一个string?

VC ++:如何获取文件的时间和date?

file_FLAG_NO_BUFFERING在al中没有指定缓存。 没有读或写缓存所有数据直接进入和从您的应用程序到磁盘。 如果你读了如此大的块,那么缓存是无用的,或者你自己做了缓存,这是非常有用的。 注意当使用此标志时,WhozCraig对正确对齐数据的评论。

file_FLAG_WRITE_THROUGH只意味着在函数返回之前写入 *** 作应直接写入磁盘。 这足以实现ACID,同时它仍然允许 *** 作系统从文件中缓存数据。

使用Flushfilebuffers()可以为实现ACID提供更高效的方法,因为您可以对文件进行多次写入,然后一次刷新它们。 在一次刷新中合并写入非常重要,因为非高速缓存写入将限制您的硬盘的主轴速度。 对于7200转/分钟的磁盘,每秒最多120次非缓存写入或刷新。

总结

以上是内存溢出为你收集整理的文件耐久性设置全部内容,希望文章能够帮你解决文件耐久性设置所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1259526.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存