looker_good 2017-11-28 03:10 采纳率: 100%
浏览 3013
已采纳

JVM内存 Perm Gen永久代

我在测试测序里写了死循环,循环内sleep 1秒,在监控内存发现,永久代内存使用一直在增加,所以,想知道永久代的内存是如何分配的,
Perm Gen是方法区,那么每创建一个对象,都会加载对应类的方法吗,如果不断创建同一个类的多个对象,方法会继续加载吗,方法不是共用的
吗,如果是这样,gc不会管理到这块内存,程序跑久了肯定要oom了呀。永久代占内存一直增加,是说明每次对象的方法单独占内存吗?还有一个问题,创建的新对象在堆内存中,那么堆内存中保存的只是对象的成员变量吗(成员方法保存在永久代?),对象中对别的对象的引用又是保存在哪里?对象的引用(例如People p = new People()),p本身(不是指对象)又在内存的那一块?哎呀呀,问题太多了,求大神解答!

  • 写回答

14条回答

  • looker_good 2019-08-07 12:49
    关注

    已阅读《深入理解Java虚拟机》

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(13条)

报告相同问题?

悬赏问题

  • ¥15 求一个临界热流密度查询表程序
  • ¥15 关于浏览器调试工具断点失效的问题
  • ¥15 pubsub.js无法订阅到消息
  • ¥15 非正弦供电多相感应电机毕业设计
  • ¥15 请用asp语言将得到一组数组转换为图片
  • ¥15 stm32f103c8t6采集HLK-LD2450毫米波雷达传感器数据并打印显示距离和角度
  • ¥15 不重复生成字母+数字交易号
  • ¥15 AD封装导入后层混乱了
  • ¥15 如何将excel中的数据导入ansys中
  • ¥15 MATLAB中图像问题