gpt4 book ai didi

c - 如何在 mac OSX 中查找内存使用情况?

转载 作者:太空狗 更新时间:2023-10-29 15:08:59 26 4
gpt4 key购买 nike

如何在 osx 10.9 及更高版本中查找内存使用情况,如事件监视器显示。我使用以下代码来获取内存使用情况。

但是它在事件监视器中显示的内容与我通过这段代码找到的内容之间存在一些差异。

mach_port_t host_port;
mach_msg_type_number_t host_size;
vm_size_t pagesize;
host_port = mach_host_self();
host_size = sizeof(vm_statistics64_data_t) / sizeof(integer_t);
host_page_size(host_port, &pagesize);
vm_statistics_data_t vm_stat;
if (host_statistics(host_port, HOST_VM_INFO, (host_info_t)&vm_stat, &host_size) != KERN_SUCCESS)
{
NSLog(@"Failed to fetch vm statistics");
}
float free_count = vm_stat.free_count * pagesize;

float active_count=vm_stat.active_count *pagesize;

float inactive_count=vm_stat.inactive_count * pagesize;

float wire_used=vm_stat.wire_count *pagesize;

float zero_fill_count=vm_stat.zero_fill_count * pagesize;

float reactivations=vm_stat.reactivations *pagesize;

float pageins=vm_stat.pageins *pagesize;

float pageouts=vm_stat.pageouts *pagesize;

float faults=vm_stat.faults *pagesize;

float cow_faults=vm_stat.cow_faults * pagesize;

float lookups=vm_stat.lookups *pagesize;

float hits=vm_stat.hits * pagesize;

float purgeable_count=vm_stat.purgeable_count * pagesize;

float purges=vm_stat.purges *pagesize;

float speculative_count=vm_stat.speculative_count *pagesize;

我也想知道我应该将哪个视为应用程序内存、文件缓存、有线内存和压缩内存。

在这里,我使用此代码获得的有线计数与在事件监视器中显示的相同。

有人能帮帮我吗?谢谢

最佳答案

你可以用这个找到App内存appMemory = vm_page_size * (vm_stat.internal_page_count - vm_stat.purgeable_count);

关于c - 如何在 mac OSX 中查找内存使用情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26336829/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com