处理对对象的多线程文件访问的正确方法是什么StorageFile
?
创建一个 后StorageFile
,我使用FileIO.AppendTextAsync
.
这可行,但是一旦多个线程调用FileIO.AppendTextAsync
,我就会收到 Access Denied 错误 - 可能是因为之前对它的调用仍在运行。
我该如何处理这种情况?
处理对对象的多线程文件访问的正确方法是什么StorageFile
?
创建一个 后StorageFile
,我使用FileIO.AppendTextAsync
.
这可行,但是一旦多个线程调用FileIO.AppendTextAsync
,我就会收到 Access Denied 错误 - 可能是因为之前对它的调用仍在运行。
我该如何处理这种情况?
我还没有找到完美的解决方案,但我找到了一个可行的解决方案。
StorageFile
用volatile
关键字标记(显着减少错误)。注意: 1 和 2 一起实施对于实现预期结果是必要的 - 因此我对解决方案不完美的评论。
更新:有关更正确的解决方案,请参阅此帖子: FileIO 多线程