问题的实质:有一个日志文件,一直被几个线程写入。问题是在 Windows 10 和 Windows 8.1 上,磁盘上的此日志占用 4GB。也就是说,如果您查看文件属性,它会显示:大小:8.25MB(8 661 191 字节);磁盘大小:4.04GB(4,345,872,384 字节)。实际上,文件中并没有那么多信息。在 Windows 7 上一切正常。两种情况下的文件系统都是 NTFS。我明白,如果没有记录器类本身的代码,也没有写入这些日志的代码,很难评估情况,但不幸的是,没有办法摆脱代码。谁有任何想法为什么会这样以及在哪个方向挖掘问题的解决方案?
伙计们,谢谢你们。问题出在代码中。DWORD(-1) 值作为参数传递给 WriteFile 函数,表示要写入文件的字节数。