您的位置:首页 > 移动开发 > IOS开发

iOS 获取 当前设备 可用内存 及当前 应用 所占内存 (转)

2016-08-25 15:13 302 查看
http://aasheaa.blog.163.com/blog/static/99333120126311332613/

// 获取当前设备可用内存及所占内存的头文件  

#import <sys/sysctl.h>  

#import <mach/mach.h>  

  

   

   

// 获取当前设备可用内存(单位:MB)  

- (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;  

}  

  

// 获取当前任务所占用的内存(单位:MB)  

- (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;  

}  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: