2014-04-07 41 views
0

我有一個BackgroundWorker,包括讀/寫IsolatedStorage。在工作人員運行之前,我從IsolatedStorage中讀取數據。我是否必須擔心使用互斥鎖,還是隻有在讀取完成後纔開始工作?BackgroundWorker在上一行代碼之前運行?

//read from IsolatedStorage here 

bgw.RunWorkerAsync(); //includes read/writes to IsolatedStorage 

回答

1

有你要考慮幾件事情:

  • 如果bgw.RunWorkerAsync();之前,你的代碼運行同步,
  • 如果IsolatedStorage操作也被執行爲同步,
  • 如果bgw是怎麼回事只使用IsolatedStorage的任務/線程/進程(檢查所有事件,方法,構造函數... - 也是IsolatedStorageSettings,其他方法例如SaveJpg,
  • 如果你處置你的ISF和所有IsolatedStorageStreams

然後就沒有問題,你可以做到沒有互斥。但海事組織會更安全/更好地使用一個 - here in the answer你有一個很好的模式。

相關問題