C#的Process类中关于内存的属性有5个(不含峰值那些),经过与Windows10任务管理器中的数值对比,得出以下对应关系:
NonpagedSystemMemorySize64:非分页缓冲池
PagedMemorySize64:提交大小
PagedSystemMemorySize64:分页缓冲池
PrivateMemorySize64:提交大小
WorkingSet64:工作集(内存)
其中,PagedMemorySize64和PrivateMemorySize64我运行了很久,两个属性的值始终一样,都与提交大小差不多,不知道是确实就一样了,还是在某些特定情况下会不一样,目前存疑
另外,任务管理器中与内存相关的列还有内存(活动的专用工作集)、内存(专用工作集)、内存(共享工作集)3列,在Process类中找不到对应的属性,也无法根据其他属性计算出来,不知道有没有什么办法获得?
然后几个内存项之间的换算关系大概如下:
工作集(内存)=内存(专用工作集)+内存(共享工作集)
内存(活动的专用工作集)=内存(专用工作集),只要进程没休眠
提交大小=内存(专用工作集)+虚拟内存(专用),虚拟内存(专用)目前没地方看