usb磁盘写入延迟(windows)

Ult*_*ior 6 c c++ windows usb winapi

我正在从最低优先级的线程写入USB磁盘,使用分块缓冲区写入,但仍然有时系统整体滞后于此操作.如果我只禁用写入磁盘,一切正常.我不能使用Windows文件操作API调用,只能写C.所以我想也许有一个WinAPI函数来打开/关闭USB磁盘写缓存,我可以结合使用FlushBuffers或类似的替代方案?操作的驱动器数量未定义.

理想情况下,我希望永远不会使用写调用和缓存,如果它将透明地执行也是可以的.

编辑:_O_SEQUENTIAL在只写操作上标记在这里有用吗?

Ale*_*x Z 4

尝试降低线程的 I/O 优先级。请参阅这篇文章:http://msdn.microsoft.com/en-us/library/windows/desktop/ms686277 (v=vs.85).aspx 特别是对 IO 线程使用 THREAD_MODE_BACKGROUND_BEGIN。警告:这在 Windows XP 中不起作用