我有一个经常从多个线程调用的方法。它涉及使用await FileIO.WriteTextAsync
. 从单个线程调用它时它工作正常,但是一旦我开始在多个线程中执行此操作,我会收到此错误:
The process cannot access the file because it is being used by another process.
我知道错误意味着什么,但我不确定如何解决它。通常,我会创建一个lock(object)
语句,以确保一次只能由一个线程访问该文件。但是,这是一种异步方法,因此我不能在语句await
的主体中使用运算符。lock(object)
请告知如何处理这种情况。