我有点担心我在下面的截图中看到的统计数据。
进程内存使用率无法与操作系统整体报告的内存使用量相匹配。据报道,我的应用程序(iSCSI_GUI.exe)消耗稳定且一致的RAM(大约2.4GB)。这个数字永远不会增加根据流程表,内存使用情况似乎稳定。
然而......
观察表格下方的GREEN BAR和任务管理器中的内存图表。这两张图总和没有相互接近的地方。
当我的应用程序运行时,底部的绿色BAR会保持向上和向上滴答,但报告的进程使用情况保持不变。
在对我的屏幕进行终止后,它看起来像这样......
我的应用程序如何可能导致这样的影响以及可能有什么线索可以帮助我理解这里发生的事情?我知道内存碎片和所有这些,但这些数字是不合时宜的,而且对我来说并不像是碎片。
新细节
我下载了sysinternals RAMMAP实用程序,它告诉我我的大部分内存被标记为“映射文件”。据我所知,我没有明确要求从Windows API调用中获取内存映射文件,必须对此进行调查。我正在使用Delphi TFileStream类。
下面是RamMap显示的屏幕截图。