【发布时间】:2014-06-03 11:28:07
【问题描述】:
我正在尝试监控内存使用情况。 我编写了一个示例 c# 代码以确保我测量正确:
var list = new List<byte[]>();
int INCREMENT = 100; // 100MB
for(int i=0; i<10; i++){
list.Add(new byte[INCREMENT * 1024 * 1024]);// 100 MB steps
Thread.sleep(4000);
}
我使用任务管理器并记录了“私人工作集”的读数:
3'800k = 3.7M
3'900k = 3.8M
4'100k = 4M
4'300k = 4.2M
4'500k = 4.4M
5'200k = 5.07M
5'400k = 5.27M
5'600k = 5.47M
5'900k = 5.76M
6'100k = 5.96M
有人知道为什么这些数字没有意义吗?
【问题讨论】:
-
它们完全有道理。我不明白这个问题。
-
您每 4 秒填充一次列表,您的内存也在相应增长。似乎有什么问题?
-
为什么内存增加了 0.2 MB 而不是 100MB?