在GC环境中,Core Data何时会释放其分配的内存?

时间:2011-06-30 08:20:31

标签: cocoa macos core-data memory-management

在我的应用程序中,现在似乎Core Data正忙于为不同的对象分配内存空间,但是,它永远不会释放那些内存。应用程序使用的内存随着运行的增加而不断增长。

是否调用了Core Data上下文(或其他内容)以确保清除所有内存? Core Data什么时候会释放分配的内存?

谢谢!

1 个答案:

答案 0 :(得分:3)

即使核心数据已经完成了一个对象(可能不是你想的那样),垃圾收集器也不一定会立即收集它。

垃圾收集器有两种触发收集的方法:collectIfNeededcollectExhaustively。前者不保证现在收集,后者可能会暂停您的申请。

您可以强制核心数据对其对象进行故障。有关详细信息,请参阅Reducing Memory Overhead