MemoryInfo: availMem 当前系统剩余内存 threshold “低内存”的标准 lowMemory 当availMem<threshold即为true,这时候系统会开始关闭后台应用
onTrimMemory(int state) 当进程在前台时,state的值可能是以下三个 TRIM_MEMORY_RUNNING_CRITICAL:内存不足(后台进程不足3个) TRIM_MEMORY_RUNNING_LOW:内存不足(后台进程不足5个) TRIM_MEMORY_RUNNING_MODERATE:内存不足(后台进程超过5个) 这个事件触发比较早,操作系统还可以关闭后台进程来周转。只是提醒在用户内存的紧迫程度。 onLowMemory() 在所有后台进程关闭后,同时处于lowMemory状态时触发。这时候系统已没有内存腾挪的空间。剩余内存继续变少,前台应用随时可能被关闭,以保障操作系统的正常运行(否则只能死机)
- (void)didReceiveMemoryWarning { (int)OSMemoryNotificationCurrentLevel()); } OSMemoryNotificationCurrentLevel()的枚举: OSMemoryNotificationLevelAny = -1 正常 OSMemoryNotificationLevelNormal = 0 正常 OSMemoryNotificationLevelWarning = 1 内存不足警告 OSMemoryNotificationLevelUrgent = 2 严重内存不足警告 OSMemoryNotificationLevelCritical = 3 闪退(所以实际上无法收到此消息) OSMemoryNotificationLevelWarning可以认为等效onTrimMemory(TRIM_MEMORY_RUNNING_CRITICAL),只是提示出现内存不足的现象,这时候会通过关闭后台进程来获取额外内存,并不一定非要处理。 OSMemoryNotificationLevelUrgent 可以认为等效onLowMemory,表示系统已经处于非常危险的状态,前台进程随时都可能被关闭。
您需要 登录 才可以下载或查看,没有账号?立即注册
使用道具 举报
本版积分规则 发表回复 回帖并转播 回帖后跳转到最后一页
小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )
GMT+8, 2024-11-15 19:30 , Processed in 0.089384 second(s), 26 queries .
Powered by Discuz! X3.5 Licensed
© 2001-2024 Discuz! Team.