
从MSDN我明白,当您调用WinAPI的Createfile没有file_FLAG_NO_BUFFERING然后Writefile写入数据到系统caching。 它不直接写入物理磁盘。 *** 作系统稍后将其写入物理磁盘。
我不知道当Movefile被调用时会发生什么。 是否保证Movefile调用后文件实际上在物理磁盘上移动或者只是系统caching更新?
从windows命令行启动mercurial hg web服务器
即使在windows上的背景中运行命令之后,PHP脚本仍然卡在exec上
谁是GWLP_USERDATA单元的所有者?
理解C中的缓冲
windows上的Ruby On Rails – linux VM或双启动
如果要保证移动已经移动到磁盘上,请使用带有MOVEfile_WRITE_THROUGH标志的MovefileEx ,这个标志确实如此。 请注意,这可能是一个严重的性能损害(通常很少或没有收益)。
Movefile本身并不指定文件如何移动。 它确实可能会移动 ,或者它可能会复制和删除 ,它可能会或可能不会使用缓冲区缓存。
假设它确实使用缓冲区缓存工作是合理的,并且“移动”实际上意味着在同一物理磁盘上“移动”。
通常没有太多理由不使用缓冲区缓存,因为除了电脑中断 *** 作或用户将电缆拉到外部磁盘上之外,这是非常可靠的。 这两种情况都非常罕见。 但是,即使发生了, 灾难性的后果通常也是很温和的,除非你试图用数以万计的文件移动巨大的目录(通常根本没有任何东西被移动,或者根据 *** 作模式,你有一个完整的原始文件和目的地的陈旧文件)。
总结以上是内存溢出为你收集整理的MoveFile是否确保文件在磁盘上移动?全部内容,希望文章能够帮你解决MoveFile是否确保文件在磁盘上移动?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)