感谢您花时间阅读本文。 我已经证明了管理一些文件和文件夹的概念。 这里的问题是在执行期间,这个逻辑抛出System.UnauthorizedAccessException并不总是在同一时间,例如,我似乎在逻辑尝试移动文件时,文件尚未创建。 我可以解决它把Thread.Speep但我真的不喜欢它。 有人有什么想法吗? 谢谢!!!
public class FileManager
{
public async Task DoStuff()
{
await Task.Run(() =>
{
var count = 0;
while (count <= 100000)
{
Task.Run(() => File.Create("example.txt").Dispose()).Wait();
Task.Run(() => File.Copy("example.txt", "test/example.txt")).Wait();
Task.Run(() => File.Delete("example.txt")).Wait();
Task.Run(() => File.Delete("test/example.txt")).Wait();
count++;
}
});
}
}
答案 0 :(得分:1)
可能是病毒扫描程序或类似的系统服务干扰。通过在删除之前重命名来解决:
var tmp = Guid.NewGuid().ToString("n");
File.Move("example.txt", tmp);
File.Delete(tmp);