最小化文件的LOCK时间



我正在开发一个应用程序,该应用程序读取文件并在处理后将其保存回。在处理文件时,我必须将文件保存在流中。现在的问题是,我必须最小化文件的LOCK时间
解决方案是什么?

我建议您将文件保存在MemoryStream中。向MemoryStream写入时,数据将存储在内存中,而不是存储到文件系统中。处理完成后,您可以调用MemoryStream.WriteTo将数据永久存储在文件系统中。这将最大限度地缩短锁定时间。

您可以使用允许其他进程访问该文件的ShareMode打开文件句柄。换句话说,您可以在不创建独占锁的情况下读取文件:

FileStream stream = File.Open("path", FileMode.Open, FileAccess.Read, FileShare.ReadWrite);

相关内容

  • 没有找到相关文章

最新更新