当前位置: 首页 > news >正文

Java-JVM的内存模型

一.JVM内存模型

JVM内存模型可以从进程生命周期和线程生命周期

1.线程生命周期

每个线程都会有自己各自一份数据,不会存在线程安全问题

1.程序计数器

指示当前线程执行的字节码指令的行号,以便线程执行时可以回到正确的位置

2.虚拟机栈

线程私有的,与线程在同一时间创建。管理JAVA方法执行的内存模型。每个方法执行时都会创建一 个桢栈来存储方法的的变量表、操作数栈、动态链接方法、返回值、返回地址等信息。方法执行完毕后,将其出栈。

3.本地方法栈

与虚拟机栈类似,但是执行的是本地的方法(不是java语言编写的)

2.进程生命周期

进程里的数据会被当前所有的线程共享,会存在线程安全问题

1.堆

存放对象实例和数组,是垃圾回收的主要区域,分为新生代和老年代。
新生的对象放入Eden区中,经GC后放入S0或S1,再经GC后放入之前未放入的S1或S0(总保持一个为空),直至达到老年代的临界值,放入老年代

2.方法区

线程共享的,用于存放被虚拟机加载的类的元数据信息,如常量、静态变量和即时编译器编译后的
代码。
http://www.lryc.cn/news/621589.html

相关文章:

  • 网上商城|基于SprinBoot+vue的分布式架构网上商城系统(源码+数据库+文档)
  • 【学习笔记】进程、线程、协程及进程间通信
  • 电脑开机几秒后就停止然后再循环是怎么回事
  • 深入理解 Python 闭包:从原理到实践
  • 永磁同步电机控制 第二篇、电机的分类
  • web学习笔记6
  • 使用原生css实现word目录样式,标题后面的...动态长度并始终在标题后方(生成点线)
  • 硬件开发_基于STM32单片机的热水壶系统
  • 数据结构初阶:排序算法(一)插入排序、选择排序
  • 宋红康 JVM 笔记 Day02|JVM的架构模型、生命周期、发展历程
  • 46.Sentinel规则持久化
  • mlir clone
  • week1-[循环嵌套]画正方形
  • cloudflare缓存配置
  • AAAI爆款:目标检测新范式,模块化设计封神之作
  • StarRocks数据库集群的完整部署流程
  • JavaScript性能优化30招
  • 【车联网kafka】常用参数及其命令总结(第八篇)
  • 计算机网络:(十五)TCP拥塞控制与TCP拥塞控制算法
  • es7.x的客户端连接api以及Respository与template的区别
  • Notepad++插件开发实战指南
  • 【详细操作指南】如何将 Moodle 与编辑器连接,以修改文档、检查和批改作业等
  • HTTP/2新型漏洞“MadeYouReset“曝光:可发动大规模DoS攻击
  • HTTP 请求方法:GET 与 POST
  • STM32L051 RTC闹钟配置详解
  • 《JMeter核心技术、性能测试与性能分析》 教学大纲及标准
  • 硬核实用!R+贝叶斯解决真实问题:参数估计(含可靠性分析) + 回归建模(含贝叶斯因子比较) + 生产级计算实践 赠「常见报错解决方案」秘籍!
  • 电商架构测试体系:ZKmall开源商城筑牢高并发场景下的系统防线
  • Jmeter自定义脚本
  • Easy Rules 规则引擎详解