如何计算Windows上进程的可用虚拟地址空间量?

我的应用程序需要限制使用的地址空间量。因此,我需要估计已消耗了多少内存以及还剩下多少虚拟内存。如果我只剩下几百兆的地址空间,我的进程将开始使用自定义分页系统,以避免将太多数据加载到内存中。

更重要的是:这需要按进程计算,因为我只关心自己的进程,我仍在使用Win32。

我已经尝试过VirtualQuery(),但是它没有返回剩余的总地址空间。

谢谢。

最佳答案

可能希望调查GetProcessMemoryInfoGetProcessWorkingSetSizeEx以确定正在使用的内存量。

10-08 11:57