面试知识汇总——JVM内存模型

JVM内存模型

线程独占:栈和本地方法栈、程序计数器;线程共享的是堆和方法区

栈:又叫方法栈,线程私有,线程执行方法都会创建一个栈阵,用来储存局部变量表,调用方法执行入栈,方法返回执行出栈

本地方法栈:与栈类似,保存执行方法信息,执行java方法是使用栈,native方法使用本地方法栈

程序计数器:保存当前线程执行的字节码位置(也就是程序执行到哪里了),只为java方法服务,每个线程你有自己的计数器

堆:存放由new创建的对象和数组,动态地分配内存大小,会有垃圾收集器自动回收数据,存取速度较慢

方法区:存储被虚拟机加载的类信息,常量、静态变量。1.7的永久代和1.8的元空间都是方法区的实现,方法区是内存最大的一部分,被线程共享,存放对象的实例,当堆空间不足时,会抛出OOM异常

扩展

元空间

jdk8后,永久代被元空间替代,实际上两者都是方法区的实现。对于永久代,如果生成很多class的话,可能出现PerGen space异常,因为永久代的空间配置有限,是和堆的使用地址连续的,元空间的物理地址不再与堆连续,而存在与本地内存中,内存多大,元空间多大。

STW(Stop The World)

垃圾回收的过程中,会涉及到对象的移动,为了保证对象引用更新的正确性,必须停用所有的用户线程,这种停顿就是stw。

OpoMap

在HotSpot中,有一个映射表称为OopMap,一旦类加载动作完成,HotSpot就会把对象内的偏移量和数据类型等计算出来,记录到OpoMap中,在即时编译过程中,也会在特定的位置生成OpoMap,记录栈上和寄存器哪些位置是引用:循环的末;方法临返回前;可能抛出异常的位置。

TLAB本队线程分配缓存

把内存分配的动作按照线程划分在不同的空间内进行,每个线程在java堆中预先分配好一小块内存,这就是TLAB。通过:xxUseTLAB设置

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/494823.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

AJAX(二):axios 和 fetch函数发送AJAX请求、同源策略、 jsonp、CORS

一、各种发送AJAX请求 jquery基于回调函数,axios基于promise 1.axios发送AJAX请求!!! axios (v1.5.0) - Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 Node.js 中。 | BootCDN - Bootstrap 中文网开源项目免费 CDN 加速服务 服务器: app.…

Linux 系统 docker搭建LNMP环境

1、安装nginx docker pull nginx (默认安装的是最新版本) 2、运行nginx docker run --name nginx -p 80:80 -d nginx:latest 备注:--name nginx 表示容器名为 nginx -d 表示后台运行 -p 80:80 表示把本地80端口绑定到Nginx服务端的 80端口 nginx:lates…

c++|STL简介+string类的使用(常用接口)

目录 一、STL简介 1.1STL的版本 1.2STL六大组件 1.3STL的重要性及缺陷 二、string类简介 2.1string类了解 2.2为什么学习string类 三、string类使用(常用接口) 3.1string类的成员函数 3.1.1构造函数 3.1.2析构函数 3.1.3“”运算符重载函数 3.2迭代器(iterator)s…

免费使用Claude 3!这个平台集成了所有主流的AI聊天机器人!Poe AI 2024最新版教程

大家好,我是木易,一个持续关注AI领域的互联网技术产品经理,国内Top2本科,美国Top10 CS研究生,MBA。我坚信AI是普通人变强的“外挂”,所以创建了“AI信息Gap”这个公众号,专注于分享AI全维度知识…

QT中的服务器与客户端

一、前言 本文主要讲讲QT中服务器与客户端的使用方法,QT已经封装好了,调用相应类直接访问即可。本文以QT中的QT中的TCP为例子,讲下使用方法以及线程中使用。 二、正文 2.1 Sever的使用方法 2.1.1 思路 QT中Sever使用的时候大致步骤为&…

《论文阅读》PAGE:一个用于会话情绪原因蕴含基于位置感知的图模型 ICASSP 2023

《论文阅读》PAGE:一个用于会话情绪原因蕴含基于位置感知的图模型 ICASSP 2023 前言 简介任务定义模型构架Utterances Encoding with EmotionPosition-aware GraphCausal Classifier实验结果 前言 亲身阅读感受分享,细节画图解释,再也不用担…

【QQ版】QQ群短剧机器人源码 全网短剧机器人插件

内容目录 一、详细介绍二、效果展示2.效果图展示 三、学习资料下载 一、详细介绍 QQ版本可以兼容两个框架(HTQQ,MYQQ这两个的vip版也可以使用) 支持私聊与群聊,命令是 搜剧影视关键词 如果无法搜索到影视资源,请使用下方命令&…

【LVGL-键盘部件,实体按键控制】

LVGL-二维码库 ■ LVGL-键盘部件■ 示例一:键盘弹窗提示■ 示例二:设置键盘模式■ 综合示例: ■ LVGL-实体按键控制■ 简介 ■ LVGL-键盘部件 ■ 示例一:键盘弹窗提示 lv_keyboard_set_popovers(kb,true);■ 示例二:设…

Spring boot2.X 配置https

背景 最近项目组说要将 http 升级成 https 访问,证书也给到我们这边了,当然我们这边用的是个二级域名,采用的是通配符访问的方式,比如一级域名是这样(com.chinaunicom.cn),我们的则是&#xff0…

java数据结构与算法刷题-----LeetCode744. 寻找比目标字母大的最小字母

java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846 文章目录 二分查找 二分查找 解题思路:时间复杂度O( l o g 2 …

vue2高德地图选点

<template><el-dialog :title"!dataForm.id ? 新建 : isDetail ? 详情 : 编辑" :close-on-click-modal"false" :visible.sync"show" class"rv-dialog rv-dialog_center" lock-scroll width"74%" :before-close&q…

神经网络:梯度下降法更新模型参数

作者&#xff1a;CSDN _养乐多_ 在神经网络领域&#xff0c;梯度下降是一种核心的优化算法&#xff0c;本文将介绍神经网络中梯度下降法更新参数的公式&#xff0c;并通过实例演示其在模型训练中的应用。通过本博客&#xff0c;读者将能够更好地理解深度学习中的优化算法和损…

五种方案图文并茂教你使用DBeaver,SQL文件导入数据库,插入数据,备份恢复mysql,postgres数据

文章目录 备份导出数据方案一&#xff1a;支持可以整个库导出、部分表导出、多个库导出&#xff08;可选格式较少&#xff09;使用连接数据库鼠标右键选择需要导出备份的数据库-工具-备份勾选需要导出的表-点击下一步设置输出目录和输出名称-点击开始导出成功 方案二&#xff1…

如何查看局域网IP?

在日常使用计算机和网络时&#xff0c;我们经常需要查看本地设备在局域网中的IP地址&#xff0c;以便进行一些网络配置或者连接其他设备。本文将介绍如何查看局域网中的IP地址&#xff0c;以及相关技术中的天联组网优势。 查看局域网IP 在Windows操作系统中&#xff0c;我们可…

Centos 配置JDK和Tomcat(新手版)

Centos 配置JDK和Tomcat&#xff08;新手版&#xff09; 1、安装JDK 如果原环境有jdk则需要卸载。 先用命令查看 rpm -qa|grep java 如果有jdk则需要卸载rpm -e --nodeps java-1.7.0-openjdk-1.7.0.191-2.6.15.5.el7.x86_64rpm -e --nodeps java-1.8.0-openjdk-…

ClickHouse初体验

1.clickHouse是啥&#xff1f; ClickHouse 是俄罗斯的 Yandex 于 2016 年开源的列式存储数据库(DBMS)&#xff0c;使用 C语言编写&#xff0c;主要用于在线分析处理查询(OLAP)&#xff0c;能够使用SQL查询实时生成分析数据报告 2.clickHouse的特点 2.1列式存储 对于列的聚合&…

web--文件下载,文件删除,文件读取

文件下载 看下载的地址 r不为空&#xff0c;所以传入donwload 下面的都能下载 实例 这样就会尝试下载1.zip 下载上一个目录的文件 包含了很多&#xff0c;里面可能就有配置文件 就是看到这种直接放文件上去 任意文件读取 得搜索特定函数&#xff0c;然后去源码找 找到调用的地…

软考 系统架构设计师系列知识点之云原生架构设计理论与实践(8)

接前一篇文章&#xff1a;软考 系统架构设计师系列知识点之云原生架构设计理论与实践&#xff08;7&#xff09; 所属章节&#xff1a; 第14章. 云原生架构设计理论与实践 第2节 云原生架构内涵 14.2 云原生架构内涵 关于云原生的定义有众多版本&#xff0c;对于云原生架构的…

JAVA的控制语句

控制语句 分为顺序、选择和循环 顺序结构 先执行a&#xff0c;再执行b 条件判断结构 如果......则....... 循环结构 如果.....则重复执行 条件判断结构&#xff08;选择结构&#xff09; if单分支结构 语法结构&#xff1a; if(布尔表达式){ 语句块 } 注&#xff…

极简wordpress网站模板

Pithy设计师wordpress网站模板 精练简洁的wordpress模板&#xff0c;设计师或设计工作室展示型网站模板。 https://www.jianzhanpress.com/?p6329
最新文章