Har*_*dan 6 macos cocoa memory-management
我正在寻找-(void)applicationDidReceiveMemoryWarning:(UIApplication *)application与iPhone上可用方法相当的方法.到目前为止,我还没有找到任何东西,但我想在开始写自己之前检查一下.
Mac OS X上的内存与OS X Touch的功能完全不同.值得注意的是,桌面计算机拥有更多RAM,并且随着应用程序需求的增加将内存交换到磁盘.同样,有许多应用程序在争夺资源.
真正的问题是你想要完成什么?
如果答案是有效地使用内存,那么您需要专注于最小化分配,确保没有泄漏,并确保您的数据结构得到优化.使用Instruments中的ObjectAlloc分析内存使用情况并找出关注的位置.
但是,如果答案更多的是我有一个缓存子系统,它可以从大量内存中获益,但我希望在其他应用程序增加需求时将其返回给系统,那么您将需要调查Snow Leopard的缓存和可清除内存支持.
值得注意的是,这两个API提供了一种积极缓存数据的方法,只要它们是系统资源,在内存压力时退回或返回系统.