传递NSManagedObject还是仅传递一个属性?

时间:2012-01-25 18:29:03

标签: core-data nsmanagedobject

我有一个应用程序,我将一个NSManagedObject与许多(更多30个)传递给UIViews。 我是使用assign进行的。

我想知道它是否比传递2或3个属性(只有视图需要的属性)更昂贵?

我希望得到一个明确的解释:)。

由于 沙尼

1 个答案:

答案 0 :(得分:1)

如果我正确理解了您的问题,您想知道仅传递NSManagedObject或NSManagedObject本身的值是否更昂贵。对象存储在堆内存中,并由其他对象作为内存地址(一个或两个字节)引用。除非你告诉它,它不会复制对象的副本。因此,如果您使用“强”,“分配”,“保留”等,则不会增加太多内存。如果使用“复制”,则会创建一个新对象,并且大部分也会复制原始对象中的所有内容。就内存而言,这将是昂贵的。所以我认为你可以毫不费力地在每个UIView中保存对NSManagedObject的引用。

HTH