FileStream.Dispose会立即关闭文件吗?

Nat*_*ate 7 .net c# io

我有一些代码通过使用MemoryStream.WriteTo()将MemoryStream保存到FileStream来写入文件.文件关闭后再次打开以阅读一些元数据...

这大约有80-90%的时间.另外20%我得到一个例外,说该文件"正被另一个进程使用".

FileStream.Dispose()不同步释放资源吗?我不知道Win32土地上有什么东西在降低吗?我在.Net文档中没有看到任何明显的东西.

Hen*_*man 6

尽可能"立即".由于优秀的写入,更新目录信息的延迟等,很容易出现滞后.它也可能是防病毒软件检查您更改的文件.

这可能是需要a的罕见情况Thread.Sleep(1).但为了完全安全,你必须捕获(任何)异常并再次尝试一定次数.