gpt4 book ai didi

ios - 在一个线程中多次初始化 Realm 是否有实质性的缺点?

转载 作者:搜寻专家 更新时间:2023-11-01 07:22:21 26 4
gpt4 key购买 nike

Swift Realm docs提到你只需要用 let realm = try! 来初始化 Realm! Realm() 每个线程一次。我想知道在我的项目中使用 Realm 的少数几个类中调用一次它是否会带来任何性能(或其他)问题。是否值得制作某种保持对 Realm 对象的引用的单例类?

最佳答案

不,没有缺点,因为已经有适当的保护措施来防止这种情况发生。 Realm 实例在内部(弱!)根据线程的路径缓存每个线程,因此您不需要想出自己的机制。

它有助于确保您在所有需要常规访问的线程上保持至少一个 Realm 实例处于事件状态。总的来说,如果在任何线程上仍然有一个实例处于事件状态,那么在另一个线程上实例化一个 Realm 的成本要低得多,因为可以共享一些数据。如果您使用的是 GCD,请记住只有主线程可以保证哪个线程将执行主队列的任务。

关于ios - 在一个线程中多次初始化 Realm 是否有实质性的缺点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38152167/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com