java方法消耗内存统计
大家好,有个问题请教一下各位:
1、java代码,生成一百万条数据消耗100m内存,为什么生成数据结构是一样的50万条数据消耗的内存的65m,理论上不是应该减半吗,即消耗50m内存,不应该有这么大偏差吧;如果存在偏差,偏差在哪里?
2、对上述生成的一百万数据进行排序,排序消耗内存大概是4-5M,这个消耗是不是小了点?
3、有什么工具可以正确监控java方法执行时消耗多少内存?
大家踊跃讨论噢,谢了,各位。
[解决办法]
jvmstat或者jdk自带的jvisualvm、jconsole
[解决办法]
占用内存不是只看生成的数据条数,还要看是什么数据,单条数据占用的内存数也不一定互相相等.
[解决办法]
内存 和 数据库数据 没有直接关系吧
不连接数据库 没有数据,就创建 大对象 也能内存溢出的。