分享

vc GlobalMemoryStatus获取内存信息

 昵称3972135 2010-11-19
GlobalMemoryStatus,Win32 API函数。
  此函数用来获得当前可用的物理和虚拟内存信息,函数定义为:
  VOID GlobalMemoryStatus
  (
  LPMEMORYSTATUS lpBuffer
  );
  此函数无返回值,参数是一个指向名为MEMORYSTATUS的结构的指针。函数的返回信息会被存储在MEMORYSTATUS结构中。
  此函数用来替代用来支持16位应用程序的GetFreeSpace函数。
  应用程序应该在申请内存前调用此函数以防止影响到其他程序运行。
  这个函数的返回值是动态的,并且可能返回相同的值。
  关于MEMORYSTATUS结构:
  机构定义:
  typedef struct _MEMORYSTATUS { // mst
  DWORD dwLength; // sizeof(MEMORYSTATUS)
  DWORD dwMemoryLoad; // percent of memory in use
  DWORD dwTotalPhys; // bytes of physical memory
  DWORD dwAvailPhys; // free physical memory bytes
  DWORD dwTotalPageFile; // bytes of paging file
  DWORD dwAvailPageFile; // free bytes of paging file
  DWORD dwTotalVirtual; // user bytes of address space
  DWORD dwAvailVirtual; // free user bytes
  } MEMORYSTATUS, *LPMEMORYSTATUS;
  结构成员的含义:
  dwLength
  MEMORYSTATUS结构的大小,在调GlobalMemoryStatus函数前用sizeof()函数求得,用来供函数检测结构的版本。
  dwMemoryLoad
  返回一个介于0~100之间的值,用来指示当前系统内存的使用率。
  dwTotalPhys
  返回总的物理内存大小,以字节(byte)为单位。
  dwAvailPhys
  返回可用的物理内存大小,以字节(byte)为单位。
  dwTotalPageFile
  显示可以存在页面文件中的字节数。注意这个数值并不表示在页面文件在磁盘上的真实物理大小。
  dwAvailPageFile
  返回可用的页面文件大小,以字节(byte)为单位。
  dwTotalVirtual
  返回调用进程的用户模式部分的全部可用虚拟地址空间,以字节(byte)为单位。
  dwAvailVirtual
  返回调用进程的用户模式部分的实际自由可用的虚拟地址空间,以字节(byte)为单位。
  MEMORYSTATUS结构,
  结构的定义如下:
  MEMORYSTATUS STRUCT
  dwLength DWORD ? ;本结构的长度
  dwMemoryLoad DWORD ? ;已用内存的百分比
  dwTotalPhys DWORD ? ;物理内存总量
  dwAvailPhys DWORD ? ;可用物理内存
  dwTotalPageFile DWORD ? ;交换文件总的大小
  dwAvailPageFile DWORD ? ;交换文件中空闲部分大小
  dwTotalVirtual DWORD ? ;用户可用的地址空间
  dwAvailVirtual DWORD ? ;当前空闲的地址空间
  MEMORYSTATUS ENDS

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多