我有一个必须处理数十万条记录的应用程序。现在,我一次只能处理 500 个。每批最多可能需要 5 分钟来处理/分析(总共约 10 小时的处理时间)。限制 500 条记录的原因是内存消耗。我认为我们的程序占用这么多内存的主要原因之一是我们没有设置列表或字典的大小(例如 new List() 而不是 new List(100000))。我进行了更改以设置集合的大小,以便 .NET 停止创建和复制具有额外容量的新列表。
这是我的问题:如何证明某个版本的程序内存效率更高?是否有我应该查看的性能计数器?工具?监控?