安全访问本可以被另一个进程访问的文件

问题描述

我正在通过 TCP 向另一个程序发送一些数据(进行一些计算的数字)。第二个程序将计算结果写入文本文件。我想从我的控制台访问这个文本文件以在我的控制台应用程序中显示结果。我想异步执行。我如何确保写入结束并且现在可以访问文件。我如何在 main 中调用异步方法??

public static async Task SimpleReadAsync()
{
   string filePath = "C:\\result.txt";
   string text = await File.ReadAllTextAsync(filePath);
   Console.WriteLine(text);
}

如何在 main 中调用 async ??? 像这样吗?

var result = SimpleReadAsync();

解决方法

如果您处于并行读/写状态,您应该首先知道其他程序是否以独占模式打开文件。如果它是独占的,您就无法在其他程序打开文件时读取该文件。

请参考这个article

希望能帮到你