目前我正在尝试运行一个测试,该测试将在写入文件时突然关闭机器。当掉电发生时,最后一部分数据不存在,因为它在掉电之前从未刷新到磁盘。
当以下列方式打开文件时,Perl(在 Linux 中)允许直接无缓冲写入。
sysopen(F, $file, O_WRONLY|O_DIRECT) or die "Couldn't direct open file $file\n";
这允许在机器由于某种原因崩溃时写入数据直到最后一个字符。同样,对于 Windows,当使用“FILE_FLAG_NO_BUFFERING”标志打开文件进行写入时,C++ 允许直接写入。
如何使用 powershell 允许直接/无缓冲写入磁盘?