获取应用占用内存
- 获取应用进程占用内存
- (NSUInteger)memoryUsage {
task_vm_info_data_t vmInfo;
mach_msg_type_number_t count = TASK_VM_INFO_COUNT;
kern_return_t result = task_info(mach_task_self(), TASK_VM_INFO, (task_info_t)&vmInfo, &count);
if (result != KERN_SUCCESS) {
return 0;
}
// 单位为字节
return (NSUInteger)vmInfo.phys_footprint;
}
- 获取free内存(与xcode基本一致)
- (double)usageComparisonFree {
mach_port_t host_port = mach_host_self();
mach_msg_type_number_t count = HOST_VM_INFO64_COUNT;
vm_size_t page_size;
vm_statistics64_data_t vminfo;
host_page_size(host_port, &page_size);
host_statistics64(host_port, HOST_VM_INFO64, (host_info64_t