@Override public void checkPermGenSpace(boolean check) { // print.e(Runtime.getRuntime().freeMemory()); // Runtime.getRuntime().freeMemory()<200000 || // long pgs=SystemUtil.getFreePermGenSpaceSize(); int promille = SystemUtil.getFreePermGenSpacePromille(); // Pen Gen Space info not available if (promille == -1) { // if(pgs==-1) { if (countLoadedPages() > 500) shrink(); } else if (!check || promille < 50) { // else if(!check || pgs<1024*1024){ SystemOut.printDate( getErrWriter(), "+Free Perm Gen Space is less than 1mb (free:" + ((SystemUtil.getFreePermGenSpaceSize()) / 1024) + "kb), shrink all template classloaders"); // first just call GC and check if it help System.gc(); // if(SystemUtil.getFreePermGenSpaceSize()>1024*1024) if (SystemUtil.getFreePermGenSpacePromille() > 50) return; shrink(); } }