美文网首页
realm与coreData

realm与coreData

作者: 愤怒小鸟飞呀飞 | 来源:发表于2018-08-14 13:54 被阅读0次
    realm

    优点:

    • 键值观察机制
    • model 与table自动绑定
    • 有人维护,有问题能得到反馈
    • 兼容数据库版本升级
    • 支持oc swift混合编写

    缺点:

    • pod下载包67M,动态库81M库有点大,整个ipa增大4M
    • 以下方法只能在事物中调用


      image.png
    • 主键与rowid 主键的内容可以自己指定,需要不唯一
      rowid是表自己生成的,自增长的index,外部不能修改,可以使用NSDate代替
    • 所有模型对象皆继承自RLMObject,对代码侵入较高

    Realm与多线程

    1、多个线程之间不能共享Realm实例,每个线程通过 [RLMRealm defaultRealm];获取自己的realm实例
    2、所有从受realm管理的实例RLMRealm、RLMObject、RLMResult等不能跨线程传递,如需传递,查文档

    CoreData

    原理图如下:


    image.png

    cordData与Realm性能对比

    //realm
    /*单次连续写入10000条 23.8 s*/
    /*事物单次写入10000条 451 ms*/
    /*单次连续读取10000条 6.62ms*/
    /*单次连续更新10000条 935 ms*/
    
    //coreData
    /*单次连续写入10000条 33.2 s*/
    /*事物单次写入10000条 202 ms*/
    /*单次连续读取10000条 18.1ms*/
    /*单次连续更新10000条 339 ms*/
    

    代码链接:

    相关文章

      网友评论

          本文标题:realm与coreData

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