在我的應用程序中,我爲管理員端每15秒創建一個XML文件。 爲了創建XML我已經使用XML構建器。我們如何在同一時間訪問讀取和寫入XML
File.WriteAllText("D:\\FE_Display.xml", StringBuilder.ToString())
我每隔15秒就會在前端網格中顯示的文件。該文件最小10memebrs在前端同時使用。下面的代碼用於前端。
Dim ds As New DataSet()
ds.ReadXml("d://FE_Display.xml")
Try
If ds.Tables(0).Rows.Count > 0 Then
Grid1.DataSource = ds.Tables(0)
Grid1.DataBind()
End If
Catch ex As Exception
End Try
如果兩個事件(讀寫)發生在同一時間我收到以下錯誤
該進程無法訪問文件「FE_Display.xml」,因爲它正由另一個進程使用
現在您知道數據庫存在的原因了。作爲一種解決方案,您可以使用線程或某種標誌來使用監視器同步訪問(輸入和退出) – mtzaldo
爲什麼要放置C#標記?這是VB.NET的問題。 –
我會用循環測試成功(或沒有遇到失敗)來包裝這兩組代碼。在重試循環中包含Application.DoEvents以減少重試期間CPU的壓力。最糟糕的情況下,你需要幾毫秒的時間衡量。 – rheitzman