1、引入头文件

#include <sys/sysctl.h>

#include <mach/mach.h>

2、检测函数

//MARK: 可用内存
- (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: 已使用内存
- (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、输出内存状况:

每隔三秒输出一次内存使用情况:

NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:3 
                                             target:self 
                                           selector:@selector(onTimer:) 
                                           userInfo:nil 
                                            repeats:YES];

- (void)onTimer:(id)sender
{
     NSLog(@" 使用内存  %f  剩余内存  %f",[self usedMemory],[self availableMemory]);
}

转 http://www.cnblogs.com/foxmin/archive/2012/05/04/2482102.html

转载于:https://www.cnblogs.com/likwo/archive/2012/05/04/2482569.html

iphone内存检测相关推荐

  1. ios代码中的内存泄露,内存检测工具leaks 检测不出来

    iphone开发过程中,代码中的内存泄露我们很容易用内存检测工具leaks 检测出来,并一一改之,但有些是因为ios 的缺陷和用法上的错误,leaks 检测工具并不能检测出来,你只会看到大量的内存被使 ...

  2. iphone内存管理

    http://hi.baidu.com/spopavenvldiqyr/item/c8d620b6282c4d4abb0e122a iphone内存管理(一) BY 洋葱头 http://hi.bai ...

  3. iPhone内存导致iPhone白苹果,怎么解决?

    iPhone内存不足导致我们手机变成白苹果,开机之后还是白苹果,如何解决问题?分享几个方法给大家: 重启 iPhone强制重启,也许能帮我们退出暂时的白苹果界面.手机各型号强制重启的方法如下: 强制重 ...

  4. iPhone内存不足,开机白苹果?

    iPhone内存不足导致我们手机变成白苹果,开机之后还是白苹果,如何解决问题?分享几个方法给大家: 重启 iPhone强制重启,也许能帮我们退出暂时的白苹果界面.手机各型号强制重启的方法如下: 强制重 ...

  5. 内存检测工具Dr. Memory的使用

    Dr. Memory是一个内存调试工具,它是一个开源免费的内存检测工具,它能够及时发现内存相关的编程错误,比如未初始化访问.内存非法访问.数组越界读/写.以及内存泄露等.它可以在Linux.Windo ...

  6. 动态内存检测工具Valgrind

    1. Valgrind查找内存泄露利器 Valgrind是一个GPL的软件,用于Linux(For x86, amd64 and ppc32)程序的内存调试和代码剖析.你可以在它的环境中运行你的程序来 ...

  7. windows7内存诊断工具有用吗_Win7怎么使用自带工具进行内存检测?

    电脑使用久了,总是会出现各种各样的问题,其中比较常见的就是内存问题了.出现内存问题,我们可以采用系统自带的工具进行内存检测,可是很多用户不知道Win7怎么使用自带工具进行内存检测,为此小编赶紧整理了以 ...

  8. 【调试】Linux下超强内存检测工具Valgrind

    [调试]Linux下超强内存检测工具Valgrind 内容简介 Valgrind是什么? Valgrind的使用 Valgrind详细教程 1. Valgrind是什么? Valgrind是一套Lin ...

  9. Visual Leak Detector 2 2 3 Visual C++内存检测工具

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! Visu ...

最新文章

  1. 在Ubuntu18.04下的Cmake使用记录
  2. (转载)Nutch 2.0 之 抓取流程简单分析
  3. Linux diffstat命令
  4. 解决Python3 pip list 红色DEPRECATION
  5. 大数据时代的呼叫中心客服运营管理
  6. C语言超时错误,C语言题目运行得到超时错误
  7. 电子邮件工作原理简介(个人整理)
  8. java 图层,图层Layers的介绍
  9. Android Studio 报错 Error:Some file crunching failed, see logs for details
  10. Android自动化-双击操作
  11. HyperLogLog算法及原理
  12. U3D Pun2 官方文档学习和翻译
  13. fabric2.0 概念, peer、账本和排序服务
  14. 使用 Envoy 和 AdGuard Home 阻挡烦人的广告
  15. Mac OS QQ的截屏快捷键设置
  16. Qt之调用FFTW3实现音频频谱(实现)
  17. 导数的四则运算法则_高考考纲与考向分析——导数的概念与计算
  18. 学习笔记:Recyclerview、SwipeRefreshLayout、Cardview的使用
  19. ue4 玩家控制器APlayerController
  20. Xilinx SYSMON的应用

热门文章

  1. 利用人体肤色从图像中分割出人体区域的OpenCV代码
  2. 用形态学的方法实现图像的角点检测
  3. VS2012下安装OpenCV3.0.0的记要
  4. 一个简单的Dockerfile
  5. vue路由切换组件没有加载_vue-router 路由跳转后没有加载组件
  6. 云计算三层架构_金山云发布星曜裸金属服务器 打造面向云计算2.0的云基础架构...
  7. web安全编程——权限的分配和控制
  8. google svn 服务器申请 使用
  9. Java设计模式之十一 ---- 策略模式和模板方法模式
  10. iOS 获取app进程被杀死事件applicationWillTerminate