我在我的 C# 程序中遇到错误,然后我尝试用
new StreamWriter("myFile.dat");
该程序由另一个程序执行,有时程序的前一个实例会阻塞文件(不知道如何以及为什么)。
我可以在我的代码中使用任何类型的 unblocking 来编写文件吗?
我在我的 C# 程序中遇到错误,然后我尝试用
new StreamWriter("myFile.dat");
该程序由另一个程序执行,有时程序的前一个实例会阻塞文件(不知道如何以及为什么)。
我可以在我的代码中使用任何类型的 unblocking 来编写文件吗?
该程序由另一个程序执行,有时该程序的前一个实例会阻塞文件
因此,您必须在进程之间使用任何同步逻辑,而不是像“解锁文件”这样的骇人听闻的解决方案。例如,阅读mutexes。
您可以尝试使用 FileShare.ReadWrite 标志打开 FileStream。例如:
new FileStream("myFile.dat", FileMode.OpenOrCreate, FileAccess.Write, FileShare.ReadWrite);
赋予多个进程写入文件的能力。