gpt4 book ai didi

Linux/Windows 中的 C/C++ 内存使用 API

转载 作者:IT王子 更新时间:2023-10-29 00:56:25 27 4
gpt4 key购买 nike

我想获得每个进程和系统范围内的内存使用信息。在 Windows 中,这非常简单。 GetProcessMemoryInfo 和 GlobalMemoryStatusEx 可以非常轻松地完成这些工作。例如,GetProcessMemoryInfo 给出给定进程的“PeakWorkingSetSize”。 GlobalMemoryStatusEx 返回系统范围内的可用内存。

但是,我需要在 Linux 上进行。我试图找到等效于 GetProcessMemoryInfo 和 GlobalMemoryStatusEx 的 Linux 系统 API。

我找到了“getrusage”。但是,结构 rusage 中的最大 'ru_maxrss'(驻留集大小)仅为零,未实现。另外,我不知道要获得系统范围的可用内存。

目前的解决方法是,我正在使用“system("ps -p %my_pid -o vsz,rsz");”。手动记录到文件。但是,它很脏,不方便处理数据。

为此,我想知道一些奇特的 Linux API。

最佳答案

您可以在 libstatgrab 中看到它是如何完成的.
你也可以使用它(GPL)

关于Linux/Windows 中的 C/C++ 内存使用 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1674652/

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