學(xué)習(xí)筆記20170601">【PMP】學(xué)習(xí)筆記20170601
717
2022-05-28
相同點(diǎn):
1.二者都可提交preference的修改數(shù)據(jù)
2.二者都是原子操作
區(qū)別:
1.apply沒有返回值而commit返回boolean表明修改是否提交成功
2.apply是將修改數(shù)據(jù)原子提交到內(nèi)存,而后異步真正提交到硬件磁盤;而commit是同步的提交到硬件磁盤,因此,在多個(gè)并發(fā)的提交commit的時(shí)候,他們會(huì)等待正在處理的commit保存到磁盤后在操作,從而降低了效率。而apply只是原子的提交到內(nèi)容,后面有調(diào)用apply的函數(shù)的將會(huì)直接覆蓋前面的內(nèi)存數(shù)據(jù),這樣從一定程度上提高了很多效率。
3.apply方法不會(huì)提示任何失敗的提示。
總結(jié):
由于在一個(gè)進(jìn)程中,sharedPreference是單實(shí)例,一般不會(huì)出現(xiàn)并發(fā)沖突,如果對(duì)提交的結(jié)果不關(guān)心的話,建議使用apply,當(dāng)然需要確保提交成功且有后續(xù)操作的話,還是需要用commit的。
Android
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。