Dictionary<int, object>使用中的疑惑!!
在使用Dictionary泛型类时我定义的结构是Dictionary <int, object> list = new
Dictionary <int, object> ();
我测试存放了1000万条记录
存储只存储了 <int,null> 即object存储为空
在检索速度上基本能满足要求,出现的问题是占用内存比较大。
而按对对象占用内存计算应该不会太大。
我的计算方式是:10000000*4字节(int32长度)=大概40M+
而运行过程中从任务管理器看到占用内存160+M。
这个内存是从那里产生的呢?
------解决方案--------------------其他开销吧?
最好用别的方法来测试。看任务管理器不准
------解决方案--------------------可能在范型Dictionary中添加了别的处理 所以增加了内存
------解决方案--------------------Dictionary 对象本身不占用内存吗?异想天开...
Dictionary 对象要维护 Dictionary.KeyCollection 和 Dictionary.ValueCollection 两个列表...不要内存吗?
去超市看看...容器也是有体积和重量的...
------解决方案--------------------160M不算大吧,试着放点别的进去,可以测试出开销的
------解决方案--------------------1000千万不多..加多100陪试试..
------解决方案--------------------自从.net出现,内存的使用就管不了了。。。
------解决方案--------------------.net有很多你想不到的东西占用内存