zoukankan      html  css  js  c++  java
  • 一些周期性GC的理由为何



    1.供tomcat:防止内存泄漏监听器 JreMemoryLeakPreventionListener在上班,每隔一小时默认触发一次System.gc

    Class clazz = Class.forName("sun.misc.GC");
    Method method = clazz.getDeclaredMethod(
                            "requestLatency",
                            new Class[] {long.class});
    method.invoke(null, Long.valueOf(3600000)); // 一小时

    对于tomcat 7028和6038之后的版本号。这个时间被调整为
    method.invoke(null, Long.valueOf(Long.MAX_VALUE - 1));

    2.不管是tomcat还是jboss,rmi.dgc在工作,jdk6的默认设置是1小时,能够自己改动:


    -Dsun.rmi.dgc.client.gcInterval=60000
    -Dsun.rmi.dgc.server.gcInterval=60000

     能够看:http://ehcache.org/documentation/operations/garbage-collection
    这里不鼓舞使用DisableExplicitGC 。Oracle/Sun JDK 6的实现中。依赖System.gc()保证DirectByteMemory的清理。假设使用-XX:+DisableExplicitGC,清理工作可能无法及时生产完成OOM.

    版权声明:本文博主原创文章,博客,未经同意不得转载。

  • 相关阅读:
    Turtlebot-导航
    Turtlebot-创建地图-Gmapping-Kinect
    Gflags
    Linux Driver 入门
    Linux Kernel 入门
    Linux Driver 入门
    Linux Driver 入门
    Linux Driver 入门
    Win10 复制文件路径
    vs2010 nuget 基础连接已经关闭:发送时发生错误
  • 原文地址:https://www.cnblogs.com/blfshiye/p/4909318.html
Copyright © 2011-2022 走看看