如何显示iPhone空闲内存?以及如何释放iPhone内存?

时间:2009-10-14 02:13:46

标签: iphone objective-c iphone-sdk-3.0 memory-management

如何在UILabel中显示iPhone可用内存?

我想问一下,如何使用iPhone SDK释放内存?

仅供参考,我正在使用带有xcode 3.2.1的iPhone SDK 3.1.2(Mac OS X Snow Leopard)。

3 个答案:

答案 0 :(得分:5)

SDK中无法直接访问此信息,并且不允许应用程序以您建议的方式处理操作系统。你在自己的小盒子里; Apple希望你留在那里。当您提出包含“系统”的问题时,您可能不在自己的框内。

也就是说,你可以使用一些技巧。在收到-didReceiveMemoryWarning之前,您可以分配越来越大的内存块。此时,释放已分配的内存。这将让您大致了解操作系统将允许拥有多少内存。这与操作系统当然有多少不一样。跳转-didReceiveMemoryWarning也会导致操作系统自己做一些内务处理,所以这几乎是你释放内存最有效的编程方式。

释放内存的最有效的非编程方法是要求用户重新启动。对于需要大量内存(通常是游戏)的应用程序,这种方法并非闻所未闻。

SBSettings需要越狱并且不在SDK之内。

答案 1 :(得分:2)

可以使用mach api确定iPhone上的可用内存量。请参阅此相关问题:Available memory for iPhone OS app

答案 2 :(得分:0)

您可以通过在完成后分配的对象上调用“释放”来释放内存。见http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/MemoryMgmt/MemoryMgmt.html