long龙8国际中文网

一个关于 编程问题的解答网站.

有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

调试如何在Java中跟踪内存泄漏?

日志显示,我有一个代码,几个小时后就会关闭

java.lang.OutOfMemoryError: GC overhead limit exceeded
        at java.io.FileDescriptor.<init>(FileDescriptor.java:62)
        at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:217)
        at org.jboss.netty.channel.socket.nio.NioServerSocketPipelineSink$Boss.run(NioServerSocketPipelineSink.java:235)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
        at java.lang.Thread.run(Thread.java:722)

如何追踪这样的问题?有什么工具能帮上忙吗? 堆栈没有指向代码中的任何行


共 (2) 个答案

  1. 和jprofiler等工具可用于分析堆转储

  • jconsole(已经包含在JVM中)
  • jvisualvm(已经包含在JVM版本1.6 x中)