C 怎么监控程序运行内存不足

 时间:2024-10-12 08:09:24

1、首先使用vs2013创建一个示例C工程,如下图所示,这里以windows为例子简单介绍获取空闲内存的方式来实现

C 怎么监控程序运行内存不足
C 怎么监控程序运行内存不足

2、如下图所示,这是一个新建的空白工程,没有任何示例代码,但是它是一个完整的工程,是可以正常编译通过的

C 怎么监控程序运行内存不足

3、接下来,我们来介绍一个可以实现获取内存信息的脑栲葱蛸函数,这个函数叫作GlobalMemoryStatusEx它是一个windows的系统函数,用来获取系统的物理内存和虚拟内存的接口

C 怎么监控程序运行内存不足

4、然后,我们可以从msdn上可以看到,这个函数使用的时候需要注意些什么,系统要满足那些条件等

C 怎么监控程序运行内存不足

5、然后我们来检查,这个系统接口会返回给我们的是什么样的数据,我们继续查看这个结构体的变量代表什么意思,如下图所示,我们可以看到总内存和空闲内存两个参数,这正是我们想要的

C 怎么监控程序运行内存不足

6、然后,我们写上实现的代码,来获取系统内存的当前信息,如下图所示,我们对比任务管惯栲狠疲理器的可用内存,发现程序获取的值是一样的,所以通过这种方式可以检测程序内存不足的功能参考代码如下:MEMORYSTATUSEX Meminfo; double dSize; memset(&Meminfo, 0, sizeof(Meminfo)); Meminfo.dwLength = sizeof(Meminfo); GlobalMemoryStatusEx(&Meminfo); dSize = (double)Meminfo.ullTotalPhys - Meminfo.ullAvailPhys; dSize /= 1024.0; dSize /= 1024.0; dSize += 0.5;

C 怎么监控程序运行内存不足
C 怎么监控程序运行内存不足
  • 多网段局域网监控方法 局域网上网行为管理
  • SecureCRT 设置说明
  • CTI电话系统:[11]中继设置
  • 安装光模块之后光口灯不亮问题和解决方案
  • 怎么实现双ip,同时配置两个IP地址
  • 热门搜索
    爱眼护眼手抄报 春节手抄报 关于爱国的手抄报 遨游汉字王国手抄报 诗歌手抄报 读书小报手抄报 元宵节手抄报 手抄报版面设计图 手抄报模板简单又漂亮 手抄报版面设计图大全