如何查看占用了多少内存?

soulz 2003-11-20 08:08:23
在VC环境下运行一个程序,请问有没有什么方法可以查看说系统运行过程中占用了多少内存的?或者是函数OR……谢谢
...全文
90 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
GameWeaver 2003-11-21
  • 打赏
  • 举报
回复
楼上,专业点行不?
yuantao 2003-11-21
  • 打赏
  • 举报
回复
看看资源管理器
就知道了
fireseed 2003-11-20
  • 打赏
  • 举报
回复
先调用GetCurrentProcess来获得当前进程的句柄,再调用:GetProcessMemoryInfo来得到信息


/* 以下代码在VC.net2000和Windows2000Server+SP4下编译通过并正常运行 */
/* Creamdog保留所有权力 */

#include <windows.h>
#include <Psapi.h>
#include <iostream>
using namespace std;

#pragma comment ( lib, "Psapi.lib" )

int main( void )
{
HANDLE hProc = GetCurrentProcess();
PROCESS_MEMORY_COUNTERS pmc;
if ( GetProcessMemoryInfo( hProc, &pmc, sizeof(pmc)) )
{
cout << "PageFaultCount: " << pmc.PageFaultCount << endl;
cout << "WorkingSetSize: " << (ULONG)pmc.PeakWorkingSetSize << endl;
cout << "QuotaPeakPagedPoolUsage: " << (ULONG)pmc.WorkingSetSize << endl;
cout << "QuotaPagedPoolUsage: " << (ULONG)pmc.QuotaPeakPagedPoolUsage << endl;
cout << "QuotaPeakNonPagedPoolUsage: " << (ULONG)pmc.QuotaPagedPoolUsage << endl;
cout << "QuotaNonPagedPoolUsage: " << (ULONG)pmc.QuotaNonPagedPoolUsage << endl;
cout << "PagefileUsage: " << (ULONG)pmc.PagefileUsage << endl;
cout << "PeakPagefileUsage: " << (ULONG)pmc.PeakPagefileUsage << endl;
}
DWORD dwErr = GetLastError();
system( "pause" );
}

65,203

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧