• 方法区


    方法区(Method Area)

    是各个线程共享的内存区域,用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。虽然java虚拟机规范把方法区表述为堆的一个逻辑部分,但是他却有一个别名叫Non-Heap(非堆),目的应该是与java堆区分开来。

    java虚拟机规范对方法区的限制非常宽松,不需要连续的内存、可以选择固定大小和可扩展,还可以选择不实现垃圾收集。但是这部分区域的回收是有必要的,这区域的内存回收目标主要是针对常量池的回收和对类型的卸载,一般来说这个区域的回收成绩比较令人不满意,尤其是类型的卸载条件相当苛刻。

    根据java虚拟机规范的规定,当方法区无法满足内存需求时,将抛出OutOfMemoryError异常。

  • 相关阅读:
    Xcode fold code All In One
    Xcode iOS project rename All In One
    SwiftUI App Sticker All in One
    hash算法
    TCP
    gRPC目录
    Go客户端流式gRPC
    服务端流式RPC
    protobuf简单使用
    protobuf安装
  • 原文地址:https://www.cnblogs.com/cathyqq/p/9693179.html
Copyright © 2020-2023  润新知