如果我从列表中删除元素-这是否意味着我的RAM也通过垃圾收集器或以某种方式清除/释放了?

问题描述 投票:0回答:2

在我的程序中,我以循环方式在列表中添加了数百万条记录,因此随着程序的继续,我的RAM似乎也增加了(我怀疑是因为新元素和新元素已添加到列表中)-因此,如果计时器滴答事件或只需按一下list.Clear()中的结果就可以立即释放我的RAM? ram似乎增长了很多,达到500mb +,因此在亚马逊实例上,可用空间有限,这是一个问题...谢谢!

在我的程序中,我将一个循环中的数百万条记录添加到一个列表中,所以随着程序的继续,我的RAM似乎也增加了(我怀疑是因为新元素和新元素都添加到了列表中)-因此,如果计时器打勾.. 。

c# .net memory-management garbage-collection
2个回答
0
投票

List具有Clear()或Remove()方法以清除或删除列表中的项目。强制清除列表中未使用的对象。或可以为未使用的对象分配空值,以使“空分配的对象”可以标记GC不在使用中并准备好进行收集。


0
投票

确实不建议这样做,但是您可以在清除列表后强制垃圾收集器运行?

© www.soinside.com 2019 - 2024. All rights reserved.