作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
Swift Realm docs提到你只需要用 let realm = try! 来初始化 Realm! Realm()
每个线程一次。我想知道在我的项目中使用 Realm 的少数几个类中调用一次它是否会带来任何性能(或其他)问题。是否值得制作某种保持对 Realm 对象的引用的单例类?
最佳答案
不,没有缺点,因为已经有适当的保护措施来防止这种情况发生。 Realm 实例在内部(弱!)根据线程的路径缓存每个线程,因此您不需要想出自己的机制。
它有助于确保您在所有需要常规访问的线程上保持至少一个 Realm 实例处于事件状态。总的来说,如果在任何线程上仍然有一个实例处于事件状态,那么在另一个线程上实例化一个 Realm 的成本要低得多,因为可以共享一些数据。如果您使用的是 GCD,请记住只有主线程可以保证哪个线程将执行主队列的任务。
关于ios - 在一个线程中多次初始化 Realm 是否有实质性的缺点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38152167/
我是一名优秀的程序员,十分优秀!