美文网首页
Android SharedPreferences中apply和

Android SharedPreferences中apply和

作者: zyhyo | 来源:发表于2018-07-05 17:54 被阅读0次

    SharedPreferences在开发中属于很常用的,基本上在存储轻量级数据的时候都会使用,提一种最简单的用法:


    SharedPreferences.Editor editor = context.getSharedPreferences("data", MODE_PRIVATE).edit();

    editor.putInt("key", 1);

    editor.commit();

    context为当前上下文,然后SharedPreferences.Editor传入了一个名叫"key"的int值。

    这是最基本的用法,但是除了commit()方法之外,还有另外一个方法apply()


    两者肯定有区别,通过源码分析可以发现,commit()方法是有返回值的,也就是说,你可以通过这个方法判断存储是否成功,但是apply()方法没有,它的返回值是一个空值。

    但是两者还有一个更加显著的区别!

    以下是commit()方法的源码:

    以下是apply()方法的源码:

    很明显,commit()方法是同步执行的,apply()方法是异步执行的。

    所以,给个总结:

    因为是异步操作,所以apply()方法的效率是高于commit()的,在不需要判断是否保存成功的情况下,使用apply()是相对好一点的!

相关文章

网友评论

      本文标题:Android SharedPreferences中apply和

      本文链接:https://www.haomeiwen.com/subject/mknpuftx.html