我目前正在开发一款适用于iOS和Android系统的应用程序。该应用程序的核心是采用C++编写,随着时间的推移,所需的内存越来越多。但我希望在尽可能使用更多内存的同时,确保应用程序的稳定性。
当然,要实现这一点,我需要知道仍可使用多少内存。这样,如果我在一段时间后发现需要的内存超出了可用范围,我就可以停止分配内存,而不是被操作系统杀死或崩溃。
问题在于,在阅读和尝试不同的解决方案之后,我感觉动态获取的信息并不够可靠。例如,在iOS上:
这是我读到的一个典型例子/答案,似乎并不可靠。看起来你不能动态获取足够的信息以确保仍有足够的内存,因为如果使用过多内存会在发送警告后某些时候操作系统会杀死应用程序。但它也可以在此之间杀死其他应用程序,因此当我收到第一个时停止似乎不是最优解决方案。
阅读了很多帖子后,我对这个主题有些困惑。是否有一种方法可以动态、可靠地知道iOS/Android上我的应用程序还剩下多少内存?或者来自这些操作系统的内存管理对此太不可预测了?
感谢您的帮助!
当然,要实现这一点,我需要知道仍可使用多少内存。这样,如果我在一段时间后发现需要的内存超出了可用范围,我就可以停止分配内存,而不是被操作系统杀死或崩溃。
问题在于,在阅读和尝试不同的解决方案之后,我感觉动态获取的信息并不够可靠。例如,在iOS上:
[NSProcessInfo processInfo].physicalMemory
这是我读到的一个典型例子/答案,似乎并不可靠。看起来你不能动态获取足够的信息以确保仍有足够的内存,因为如果使用过多内存会在发送警告后某些时候操作系统会杀死应用程序。但它也可以在此之间杀死其他应用程序,因此当我收到第一个时停止似乎不是最优解决方案。
阅读了很多帖子后,我对这个主题有些困惑。是否有一种方法可以动态、可靠地知道iOS/Android上我的应用程序还剩下多少内存?或者来自这些操作系统的内存管理对此太不可预测了?
感谢您的帮助!