JAVA内存泄漏的问题

Raynor1 发布于 2013/02/23 09:29
阅读 510
收藏 1

写了有些年头的JAVA,有时候JAVA的内存泄漏也能很快地搞定,这一次真的找不到啊。。擦。。JPROFILER已经用了,,还是找不到定位的点在哪里。。同学们有啥好办法?不是WEB程序。是一个作业调度的工具。。

这一次人不多。。也没有人一起查。痛苦啊。。求好办法。。

基本的泄漏什么引用的就不用讲了。。多线程环境下的,我无法保证我现在用的所有的包都是线程安全,这谁有好办法?

以下是问题补充:

@Raynor1:JAVA虚拟机的参数最大可使用内存设置成128MB,涨得很缓慢,但是确实会直接涨到128全部都用完然后OUTOFMEMORY (2013/02/23 09:30)
加载中
0
红薯
红薯
才 128M 内存还好意思跑 Java 程序啊? 至少设个 1G 吧 :) 真的!
Raynor1
Raynor1
回复 @红薯 : 嗯。是的。。。我想说5000行的意思是说我还有精力一行一行执行。。表示。。执行完已经都回收了。。个P都没有。JPROFILER测试也是如此。
红薯
红薯
回复 @Kerrigan : 程序占多少内存并不是看有多少行,几行代码的程序也可以占用几个G 的内存哦:)
Raynor1
Raynor1
其实最开始的时候是4GB的程序内存,跑了一个月就报内存溢出啦。。
Raynor1
Raynor1
回复 @红薯 : 我把自己能想的办法都想了。代码大概就5000多行的代码,不多的。。我甚至逐步调试了,到程序结束,我已经看不到有对象在我的内存里面,但是到几个任务一起并发执行的时候。我桑心了。。
Raynor1
Raynor1
回复 @红薯 : 128MB是不够的。。我只是想让它漏得快而已。。。。确实有对象没有回收掉。。无法回收,在JPROFILER的三天曲线图里面很明显。。
下一页
0
A
Alex_2011
试下JProfiler里的CPU的使用率然后定位是哪个类,哪个方法占用CPU最多.然后再分析,我以前也试过.后来发现是循环中对象没有回收,仔细查找下,应该会找到问题所在的.
Raynor1
Raynor1
3Q...好办法。。我一直都看着内存图啊。。擦。
0
爱吃大肉包
爱吃大肉包
visualvm JDK7都自带了, 有啥理由不用···
Raynor1
Raynor1
too young too simple..
0
星爷
星爷
visualvm 应该可以足够你排查了吧!一样可以查看那些方法占CPU和内存
Raynor1
Raynor1
jprofiler和这vlvm都用上了。。呵呵。。多线程环境下面不好找啊。。苦B啊。
0
nubo
nubo
分析 Dump
Raynor1
Raynor1
ECLIPSE的MEMORY ANA早用了。
0
震秦
震秦

你的代码量不大,看看代码.哪里申请了大对象了. 数组,List,Set,map. 实在找不到就从代码中发现

0
无知的小孩
无知的小孩
初步分析 累计式内存溢出
0
无知的小孩
无知的小孩
什么东西在累计的变大呢
返回顶部
顶部