在线程中多次初始化域有很大的缺点吗?

时间:2016-07-01 18:47:57

标签: ios swift realm

Swift Realm docs提到您每个线程只需要null初始化一次Realm。我想知道在我的项目中使用Realm的少数几个类中是否有任何性能(或其他)问题。是否值得制作某种单一类来保持对领域对象的引用?

1 个答案:

答案 0 :(得分:2)

不,没有任何缺点,因为已经有保护措施来防止这种情况发生。 Realm实例在每个线程内部(弱!)缓存,具体取决于它们的路径,因此您不需要提出自己的机制。

虽然可以确保在需要常规访问权限的所有线程上保持至少一个Realm实例处于活动状态。总的来说,如果在任何线程上仍有一个实例存活,那么在另一个线程上实例化Realm要便宜得多,因为可以共享一些数据。如果你正在使用GCD,请记住,只有一个线程可以保证主线程的主队列执行任务。