PermGen空间在Java中的意义是什么?

PermGen实际代表什么的可能重复项?

PermGen空间是为长期对象保留的-大多数对象是ClassLoader加载的Class对象。除非在非常特殊的情况下(特别是当加载这些类的ClassLoader超出范围时),否则不会对PermGen进行垃圾回收。

这是垃圾收集的优化-如果我们不希望将垃圾收集的对象分开存储,则会压缩其余对象的存储空间,从而减少垃圾收集器的工作量。

您所指的ClassLoader是系统类加载器吗? 引导类加载器加载的类存储在哪里?

引导加载程序加载的类是该语言必不可少的类,例如String和Object。 这是JVM本地实现的一部分,因此没有关于" where"的标准答案。

精细。 那么permgen是否包含系统类加载器加载的类?

对,那是正确的。 请记住,我们正在谈论JVM的Sun实现。 PermGen不是该规范的一部分,因此另一个JVM(如另一位发布者提到的JRockit)将没有它。

PermGen特定于具有分代垃圾回收的VM。

如果您使用JRockit,那么" PermGen的重要性"就不存在,因为JRockit没有这个概念。

几年前,当奇怪的"超出PermGen空间"错误开始出现并且没人知道是谁的错误(Tomcat + Hibernate + Sun VM触发了此错误)来替换其中一个组件时,这很常见。 (如今已经理解了这些问题,但是几年前开始种植时,几乎找不到任何信息)。您可以用Resin替换Tomcat或用JRockIt等替换Sun VM。

我认为必须指出,PermGen不是Java规范的一部分,而只是(相当)某些VM的实现细节。

您真正需要知道的唯一一件事是PermGen空间与普通堆是分开的,并且不受-Xmx VM参数的影响。如果您的应用程序加载了许多类定义(例如应用程序服务器或IDE),则可以使用-XX:MaxPermSize VM选项设置PermGen空间大小。

永久代保存描述用户类(不属于Java语言的类)的元数据。

具有大型代码库的应用程序可以填满这部分堆,这将导致java.lang.OutOfMemoryError: PermGen。这不受-Xmx设置或计算机上内存量的影响。要设置新的初始大小,请使用-XX:PermSize=64m。要设置最大大小,请使用-XX:MaxPermSize=128m

"不属于Java语言的类"是什么意思? 您知道不会在PermGen中存储的任何类吗?

java permgen是什么_关于java:PermGen空间的意义相关推荐

  1. java项目----教务管理系统_基于Java的教务管理系统

    java项目----教务管理系统_基于Java的教务管理系统 2022-04-22 18:18·java基础 最近为客户开发了一套学校用教务管理系统,主要实现学生.课程.老师.选课等相关的信息化管理功 ...

  2. java代码耗尽内存_有关Java内存溢出及内存消耗的小知识

    内存溢出原理: 我们知道,Java程序本身是不能直接在计算机上运行的,它需要依赖于硬件基础之上的操作系统和JVM(Java虚拟机). Java程序启动时JVM都会分配一个初始内存和最大内存给这个应用程 ...

  3. java是什么格式_是java格式

    错误:编码GBK的不可映射字符的解决办法 最近在重新补javaSE的基础,编辑器编写完代码以后,在控制台运行代码段的时候,出现了以下的错误提示:错误:编码GBK的不可映射字符 在通过查询谷哥和度娘以后 ...

  4. java ee开发环境_设置Java EE 6开发环境

    java ee开发环境 本教程简要说明了如何设置典型的环境来开发基于Java EE 6的应用程序. 除了可以正常工作的Windows XP客户端具有足够的CPU能力和内存外,本教程没有其他先决条件. ...

  5. JAVA redis缓存过期_失效java服务器

    Java 并发/多线程教程--4并发模型 本系列译自jakob jenkov的Java并发多线程教程(本章节部分内容参考http://ifeve.com/并发编程模型),个人觉得很有收获.由于个人水平 ...

  6. 广东java工资一般多少_广东java工资待遇,广东java工资一般多少,广东java工资底薪最低多少...

    广东java工资待遇,广东java工资一般多少,广东java工资底薪最低多少 首页 > java > 广东java工资待遇 作者:镀金池   发布时间:2018-12-22 11:20 在 ...

  7. java pdf插件下载_免费java pdf控件

    云原生的概念和理论体系非常的完备,but talk is cheap , show me the code ! 但是作为一名程序员,能动手的咱绝对不多BB,虽然talk并不cheap , 能跟不同层次 ...

  8. java 线程组作用_浅析Java中线程组(ThreadGroup类)

    一.概念 Java中使用ThreadGroup类来代表线程组,表示一组线程的集合,可以对一批线程和线程组进行管理.可以把线程归属到某一个线程组中,线程组中可以有线程对象,也可以有线程组,组中还可以有线 ...

  9. java xml dom4j 解析_在JAVA中怎么用DOM和DOM4j解析XML啊?

    二.XML文件 三.开始解析 public class JDOMTest { public static void main(String[] args) { // 进行对books.xml文件的JD ...

  10. java 是否含有日文_《JAVA编程思想》5分钟速成:第9章(接口)

    第9章 接口 前言: 1.抽象类(abstract class)和接口(interface)有什么异同? 2.抽象的(abstract)方法是否可同时是静态的(static),是否可同时是本地方法(n ...

最新文章

  1. 反应式系统实现MQTT客户机
  2. 如何打造一份优雅的简历?
  3. node.js中对Event Loop事件循环的理解
  4. 解决报错:java.util.UnknownFormatConversionException: Conversion = ‘p‘
  5. hive cli启动判断hadoop version的问题
  6. 2021-06-19表单,内嵌框架
  7. centos 7安装java 8
  8. 在ArcScene中导入显示自己在SketchUp创建并经过修饰的模型
  9. Loadrunner11 下载、安装及破解
  10. 智能毫米波雷达人体感应器,实时检测静止存在,智能化控制方案
  11. 数学分析—集合与映射
  12. Red Bend与阿朗推LTE移动设备管理 使4G设备兼容OMA DM
  13. MSDOS(MBR)、GPT、BIOS、UEFI
  14. 操作系统的作用及类别
  15. 如何求出二次贝塞尔曲线上面的各个点呢
  16. 安装Windows提示无法在驱动器0分区上安装windows解决方法
  17. 国税计算机专业面试题,2018年国家公务员考试:国税系统面试题
  18. 数据分析入门 | kaggle泰坦尼克任务
  19. 卿本佳人,奈何念我【三】
  20. vc经验(它山之石)

热门文章

  1. CentOS7 通过yum安装dnf失败,提示No package dnf available的解决办法
  2. Mint 9计算机桌面:皮实、单纯和阳光
  3. IDEA配置JavaFX环境
  4. python的运行方式_详解python运行三种方式
  5. 官宣:腾讯WeTest明星工具-PerfDog面向全球发布!
  6. 异常处理Failed to read candidate component class: file
  7. 域名注册与备案(阿里云)
  8. 上海亚商投顾:沪指午后跳水跌超1% 两市超4000只个股下跌
  9. k8s批量删除Evicted Pods
  10. myeclise CI 2018 9破解方法