您如何知道您的应用程序何时有效且正确地管理内存?
考虑到它正在运行的任何数据,它似乎在合理数量的内存中运行,还是它使用的内存比您预期的要多得多?
当程序不做任何事情时,它的内存使用是否合理且稳定?
如果您彻底地运行程序,内存使用量是否稳定或似乎无限制地增长?
您的程序是否对来自操作系统的内存警告做出适当响应?
它是否能优雅地容忍低内存条件?
我是否应该使用 Leaks 以外的其他工具来确定我的应用程序是否能很好地管理内存?
Instruments 中的各种工具应该足以帮助您了解应用程序如何使用内存。您可能要考虑做的一件事是保存 Instruments 会话的结果以及一些注释,以便您可以看到应用程序的内存使用如何随时间变化。
随着我继续运行我的应用程序,我的实时字节数不断增长。
这可能是也可能不是问题;了解不断添加的块中的内容会有所帮助。如果设备上有可用内存,使用它并没有什么问题,特别是如果这意味着您的应用程序性能更好,可以避免从某个来源下载类似的数据等。但是如果您的应用程序不断分配新的视图控制器和视图而不释放旧的,这可能是泄漏。
究竟什么是malloc?
malloc()是 C 标准库中的内存分配函数之一。我感觉你在问,因为你在 Allocations 工具的 Category 列中看到像Malloc 16 bytes这样的行:

这些行表示由 分配的一类内存块malloc()。如您所见,在我的情况下malloc(),我的程序中当前正在使用 3318 个 16 字节块。确切的数字并不那么重要——您关心的是该数字如何随时间变化。如果您发现malloc()每次执行某些操作时都使用了一些块并且从未释放,那么您将知道在程序中的何处查找内存问题。(当然,任何其他类型的块也是如此。)