【问题标题】:Is it a bad idea to create a model that deals with realm db and a model for use创建一个处理领域数据库的模型和一个使用模型是不是一个坏主意
【发布时间】:2018-03-20 14:04:20
【问题描述】:

我刚开始在我的 ios swift 项目中使用领域,并注意到与从不同线程访问领域对象相关的几个问题。

所以我决定为每个模型建立一个关联领域模型。

例如,对于我的User 模型,我将拥有具有相同属性的UserRealm 模型。但是,我使用UserRealm 来读取/写入数据库,并使用User 来使用整个应用程序。

这是个坏主意吗?会不会影响realm的效率?

【问题讨论】:

    标签: ios iphone swift realm


    【解决方案1】:

    是的,来回复制对象显然会降低性能。如果您的模型与对象之间的链接相关,那么您在复制单个对象时也可能会丢失这些链接。

    您发现了哪些类型的线程问题?只要您在线程之间移交对象,您就应该是安全的。查看https://realm.io/docs/swift/latest/#passing-instances-across-threads 的示例。

    【讨论】:

    • 我的应用程序没有做很多数据库写入。大部分工作是在启动应用程序时加载数据时完成的。然后处理内存中的对象。但是,realm 每次使用时都需要获取一个对象(因为不同的线程可以使用它)
    • 如果在启动时已经加载了对象,那么在另一个线程上重新获取对象应该非常便宜(在这种情况下,它可能仍会缓存在内存中)。
    猜你喜欢
    • 2012-01-21
    • 2011-08-17
    • 2011-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-30
    • 1970-01-01
    相关资源
    最近更新 更多