JVM 本地方法栈,堆

本地方法栈

  1. 主要存储了很多,c/c++代码,而非java代码
  2. 因为,jvm需要通过c/c++代码实现和操作系统之间的交互。

堆(heap)

  1. Heap 堆
    1. 通过new关键字,创建对象都会使用到堆内存。
    2. 特点
      1. 它是线程共享的,堆中对象都需要考虑线程安全的问题
      2. 有垃圾回收机制
    3. 堆内存诊断
      1. jps工具
        1. 查看当前系统中有哪些java进程
      2. jmap工具
        1. 查看堆内存占用情况 jmap -head 进程id(非连续性)
      3. jconsole工具
        1. 图形界面的,多功能的检测工具,可以连续检测
    4. 思考
      1. 垃圾回收后,内存占用依然很高
      1. 问题在于,程序中的方法一直在被调用,垃圾回收的时候,依然在被使用,无法被垃圾回收

猜你喜欢

转载自blog.csdn.net/qq_45788043/article/details/112205018
今日推荐