2015-09-13 24 views
4

我對Realm的寫交易感到困惑。我必須對寫入事務中的對象進行所有修改,還是隻需進行一些修改,然後再將所有內容寫入磁盤?Realm的寫交易

第一個選項似乎有點矯枉過正,而且確實很乏味。

回答

5

(聲明:我的工作領域)

這是正確的!一旦一個對象被添加到一個對象中,它就只能在之後的寫入事務中被修改。

這樣做是爲了確保線程安全。當一個Realm()上寫入事務打開時,它會阻止其他線程同時嘗試打開一個寫入事務(使它們等待事務關閉)。

它看起來似乎有點矯枉過正,而且我們當然在考慮如何嘗試並使其更加簡化,但現在,我們認爲這種實現模式提供了最安全的方式來確保您的數據正確保存到磁盤。