jconsole,jdk自带,怎么用java doc里面有

解决方案 »

  1.   

    比如说在集合中放入了成千上万的数据,在本机上运行,是由于本机上的数据量小,不会出现问题,但是放到正式库上面这个数据就可能会很多。有时候 OutOfMemoryError 是由不好编程风格造成的,也就是说是人为的
      

  2.   

    jprofile 可以很好地监控内存
      

  3.   

    有,java 内存监测,%java_home%\jdk1.6.0_17\demo\management\MemoryMonitor有例子。
    当然,如果要更专业的内存分析工具,可以用jprofiler等。
      

  4.   

    用过Netbeans是可以的,搂主应该检查自己的代码,比较傻的办法可以调大虚拟机栈内存试试ThreadStackSize=1024
      

  5.   

    linux吗? top
    ps aux|grep java jstat
      

  6.   

    LZ可以看看API中的MemoryMXBean类。//方法摘要 
     void gc() 
             // 运行垃圾回收器。 
     MemoryUsage getHeapMemoryUsage() 
              //返回用于对象分配的堆的当前内存使用量。 
     MemoryUsage getNonHeapMemoryUsage() 
              //返回 Java 虚拟机使用的非堆内存的当前内存使用量。 
     int getObjectPendingFinalizationCount() 
              //返回其终止被挂起的对象的近似数目。 
     boolean isVerbose() 
              //测试内存系统的 verbose 输出是否已启用。 
     void setVerbose(boolean value) 
              //启用或禁用内存系统的 verbose 输出。