现在的位置: 首页 > 综合 > 正文

Java中的Collection[map , set , list]是否有内存容量这个概念

2014年02月26日 ⁄ 综合 ⁄ 共 433字 ⁄ 字号 评论关闭
http://java.chinaitlab.com/base/787078.html 

引用里面的内容“程序中造成内存溢出可能性最大的是HashMap,Hashtable等等集合类,尤其是静态的,更是要慎之又慎!!!它们引用的对象可能你感觉已经销毁了,其实很可能你忘记remove键值,而如果这些集合对象还是静态的挂在其他类里面,那么这个引用可能一直都在,借用JProbe测试一下,结果往往出人意料,解决办法:彻底删除键,remove、clear,如果允许最好把集合对象设为null”
这跟collection容量没什么关系,在于你设置的JVM的大小,根据你述说的,应该是你java堆造成的内存溢出,140000个对象把java堆占满了,当然就内存溢出了。你可以把JVM的堆的-Xmx设置大一些
理论上来说只要你内存够大,然后JVM的Xmx参数设置的非常大,那么就没有什么Collection内存限制了,但是内存一旦非常大,会造成GC的压力很大,服务器的性能也会急剧下降
【上篇】
【下篇】

抱歉!评论已关闭.