博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于C#的Process的内存相关属性解读
阅读量:6688 次
发布时间:2019-06-25

本文共 1173 字,大约阅读时间需要 3 分钟。

查看msdn或定位到Process类,会看他与内存相关的属性有20个,为了快速找到自己想要的属性,这里进行一下解读:

首先要明白几个概念:虚拟内存,分页文件,分页内存,物理内存,工作集,专用内存(私有内存,不能共享的内存)

虽然有这么多叫法,但只是叫法不一样。把虚拟内存,分页文件,分页内存都看成虚拟内存就可以了(个人理解)。

另外注意几个技巧,第一:Peak是峰值的意思,以Peak开头的属性是使用时的内存量,其他的都是分配的内存;

第二:以64结尾的属性返回long类型,否则返回int类型(int类型的属性已经过时);第三:两个返回类型稍微特殊的是MaxWorkingSet和MinWorkingSt,返回IntPtr代表字节数。

那么20个属性减去2个特殊的,其他的都有一个以64结尾的含义一样的属性,那么现在意义不一样的属性共有11个,只需要理解这11个即可。

将这11个属性分为四类,

第一,MemorySize(可能包含分页内存)

PagedMemorySize(64) 原话:由可写入到虚拟内存页面文件的关联进程分配的内存量(以字节为单位)

PeakPagedMemorySize(64) 原话:自启动关联的进程以来为关联进程分配的虚拟内存分页文件中的最大内存量(以字节为单位)。

PrivateMemorySize(64) 原话:为关联的进程分配的不能与其他进程共享的内存量(以字节为单位)。

第二,SystemMemorySize(系统内存,是不是可以理解系统为硬件保留的内存)

PagedSystemMemorySize(64) 原话:系统已为可写入到虚拟内存页面文件的关联进程分配的内存量(以字节为单位)。

NonpagedSystemMemorySize(64) 原话:为关联的进程分配的、不能写入虚拟内存分页文件中的系统内存量(以字节为单位)。

第三,VirtuaMemorySize(虚拟内存,分页内存)

VirtualMemorySize(64) 原话:为关联的进程分配的虚拟内存量(以字节为单位)。

PeakVirtualMEmorySize(64) 原话:关联进程请求的最大虚拟内存量(以字节为单位)。

第四,WokingSet(工作集,物理内存)

MaxWorkingSet 原话:内存中允许的进程的最大工作集大小(以字节为单位)。

MinWorkingSet 原话:内存中进程所需的最小工作集大小(以字节为单位)。

PeakWorkingSet(64) 原话:自启动关联的进程以来为关联的进程分配的最大物理内存量(以字节为单位)。

WorkingSet(64) 原话:关联进程当前使用的物理内存总量(以字节为单位)。

 

 根据动态刷新的效果来看,实时自动调整的内存量有三个值:

可分页内存量,私有内存量,工作集

转载地址:http://gqzoo.baihongyu.com/

你可能感兴趣的文章
阿里云对象存储OSS支持版本管理特性
查看>>
用python 访问redis的几种常用方式
查看>>
SHARP MX-M261N需要维护的消除方法
查看>>
我的友情链接
查看>>
Linux Shell 基本概念及编程(5)
查看>>
RDBMS DBMS MS DB
查看>>
我的友情链接
查看>>
svn 实践
查看>>
在 PowerShell 中使用 SQL Server (3)
查看>>
我的友情链接
查看>>
CSS元素定位
查看>>
质量时代——“Jolt大奖精选丛书”有奖征文
查看>>
Python list方法总结
查看>>
DNS服务器维护命令
查看>>
六、用户与权限
查看>>
面向机器学习数据平台的设计与搭建
查看>>
centos6.7 编译安装mysql-5.6.27
查看>>
spring cloud 整合zpkin问题
查看>>
Maven下载慢的解决方案
查看>>
我的友情链接
查看>>