2017-04-17 58 views
1

由於Realm數據正在從多個異步網絡回調中更新,因此我正在處理事務中的Realm寫入時發生崩潰。我明白爲什麼領域崩潰,但我想知道什麼是正確的架構在這裏。許多異步Realm寫入的最佳體系結構

到目前爲止,我可以通過將各個寫入事務移動到後臺線程來最小化崩潰,但這是推薦的最佳做法嗎?它依賴於我記得每次都這樣做。還是應該通過一些中央交換所運行網絡請求,然後將回調(因此寫入)移動到後臺線程?或者是後臺線程甚至沒有正確的方法來做到這一點?

回答

0

背景寫入與領域(甚至鼓勵!)是一致的,但有一點你應該注意的是,如果背景隊列被標記爲concurrent,那麼同一個線程可能會被重複使用同一個隊列,這意味着GCD可能會安排其中一個塊運行,而另一個塊處於寫入事務的中間。

解決此問題的最佳方法是確保您的GCD隊列在寫入過程中被標記爲串行而非併發。

相關問題