iphone内存检测
生活随笔
收集整理的這篇文章主要介紹了
iphone内存检测
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1、引入頭文件
#include?<sys/sysctl.h>
#include?<mach/mach.h>
2、檢測(cè)函數(shù)
//MARK:?可用內(nèi)存
-?(double)availableMemory
{
????vm_statistics_data_t?vmStats;
????mach_msg_type_number_t?infoCount?=?HOST_VM_INFO_COUNT;
????kern_return_t?kernReturn?=?host_statistics(mach_host_self(),HOST_VM_INFO,(host_info_t)&vmStats,&infoCount);
????if(kernReturn?!=?KERN_SUCCESS)?
????{
????????return?NSNotFound;
????}
????return?((vm_page_size?*?vmStats.free_count)?/?1024.0)?/?1024.0;
}
//MARK:?已使用內(nèi)存
-?(double)usedMemory
{
????task_basic_info_data_t?taskInfo;
????mach_msg_type_number_t?infoCount?=?TASK_BASIC_INFO_COUNT;
????kern_return_t?kernReturn?=?task_info(mach_task_self(),
?????????????????????????????????????????TASK_BASIC_INFO,?(task_info_t)&taskInfo,?&infoCount);
????if(kernReturn?!=?KERN_SUCCESS)?{
????????return?NSNotFound;
????}
????return?taskInfo.resident_size?/?1024.0?/?1024.0;
}
3、輸出內(nèi)存狀況:
每隔三秒輸出一次內(nèi)存使用情況:
NSTimer?*timer?=?[NSTimer?scheduledTimerWithTimeInterval:3?
?????????????????????????????????????????????target:self?
???????????????????????????????????????????selector:@selector(onTimer:)?
???????????????????????????????????????????userInfo:nil?
????????????????????????????????????????????repeats:YES];
?
-?(void)onTimer:(id)sender
{
?????NSLog(@"?使用內(nèi)存??%f??剩余內(nèi)存??%f",[self?usedMemory],[self?availableMemory]);
}轉(zhuǎn)?http://www.cnblogs.com/foxmin/archive/2012/05/04/2482102.html
轉(zhuǎn)載于:https://www.cnblogs.com/likwo/archive/2012/05/04/2482569.html
總結(jié)
以上是生活随笔為你收集整理的iphone内存检测的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: ActionScript工程如何使用Fl
- 下一篇: Objective-C单例实现