代码举例
一个listview detail模式
循环填充数据
代码没复制 我就说个大概
for(int i=0;i<10000;i++)
{
listviewitem item =new listviewitem(new string[]{"1","2"});
listview1.items.add(item);
}
这就是主要代码。 运行填充数据的时候 内存上涨我能理解。关键是填充完毕后 内存不降= =#
我测试7W数据填充进去的话 大概是150M 左右 稳定内存消耗 问题是填充完毕内存不回落 不降
是不是item new多了? 如果是 改怎么解决呢
------解决思路----------------------
填充完,内存为什么要回落呢?
listviewitem item =new listviewitem(new string[]{"1","2"});都在内存分配存储空间了
------解决思路----------------------
你有没有释放内存,内存都在有效使用,为什么要降下来,你说降下来的理由是什么
------解决思路----------------------
使用分页吧,C#有自己的垃圾回收机制,当你的对象还是活跃状态是不会释放的。
------解决思路----------------------
降了才有问题,你的Item都在使用状态,系统哪里敢给你释放掉啊!Remove后就会释放的。