2012-12-09 42 views
8

試圖讀取使用異常閱讀使用FileIO.ReadTextAsync

var text = await FileIO.ReadTextAsync(file); 

與此機會鎖被關聯已關閉手柄一個LOCL文本文件時,我收到以下異常文件文本時。 oplock現在已損壞。 (異常來自HRESULT:0x80070323)

這發生在迴歸單元測試之一,它也會不時發生在應用程序中。應用程序是XAML + C#

任何想法可能導致它?

+0

您正在閱讀網絡共享,是嗎? – usr

+0

不,我正在從本地文件中讀取 – Vitalij

+0

您正在閱讀的文件是否有任何異常?它特別大嗎? –

回答

5

我遇到了同樣的問題,通過併發性線程發生。我試圖在兩個地方同時訪問同一個文件,但沒有意識到這一點。

嘗試驗證您的代碼是否正在尋找相同文件的另一個訪問,並在讀取它後確認您是否關閉,並且不要忘記在每個文件讀取中調用「await」或使用鎖。我認爲這可能會解決你的問題。

+1

我無法驗證解決方案是否正常工作,但從描述看來,這正是我在項目中所做的。 – Vitalij

+1

我有同樣的錯誤。根據這個答案的提示,我發現它是由BitmapDecoder訪問一個不再可用的文件引起的。 – Hong