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

jvm笔记

好处:

跨平台

内存管理机制,垃圾回收功能

数组下标越界检查

多态

名词解释: 

jvm java虚拟机,是java程序的运行环境

jre jvm+基础类库

jdk jre+编译工具

javase jdk+ide工具

javaee javase+应用服务器

jvm的内存结构: 

程序计数器:

        java源代码-->jvm指令--解释器-->机器码-->cpu

        寄存器,记住下一条jvm指令的地址

        程序计数器是线程私有的,而且没有内存溢出

虚拟机栈:

        每个线程运行所需要的内存,由栈帧组成,一个栈帧就是一次方法的调用,栈帧是每个

        方法运行时需要的内存,每个线程只能有一个活动的栈帧,就是正在执行的那个方法

本地方法栈:

        一些方法用native修饰表明方法的实现是用C语言或者其他语言实现的,不是用java实现

        的。

堆:

        通过new关键字创建的对象都会使用堆内存,堆是线程共享的,有垃圾回收机制。

        字符串常量池。自java8开始,StringTable在堆里,

方法区:

        是堆的一部分,所以方法区是内存共享的。java8后取而代之的是元空间,运行时常量池

        和静态常量池存放在元空间里,占用操作系统的内存,字符串常量池依然存放在堆里。

        字符串常量池用hashTable结构,

栈问题:

1、垃圾回收机制是否会回收栈内存?

        不会,垃圾回收是回收堆里面的内存对象。栈内存不需要回收,因为方法结束后栈内存

        就自己释放掉了。

2、栈内存分配越大越好吗?

        不是,栈内存越大会导致线程数越少

3、方法内的局部变量是否线程安全?

        不一定,如果变量没有逃离方法的作用范围,那就是线程安全的,反之就不是线程安全

        的(方法参数,方法返回值,局部变量引用了对象),。栈是线程私有的,static变量是

        在堆中的就不是线程安全的了。

栈内存溢出的原因:

方法栈帧过多(方法递归)

方法栈帧过大(方法的局部变量太多)

新生代:

老年代:

永久代:使用jvm的堆的内存。java8之后,取消了整个永久代区域,取而代之的是元空间。

元空间:使用操作系统的内存,运行时常量池静态常量池

直接内存:操作系统的内存

垃圾回收:

bilibili.com/video/BV1yE411Z7AP P52

相关文章:

jvm笔记

好处: 跨平台 内存管理机制,垃圾回收功能 数组下标越界检查 多态 名词解释: jvm java虚拟机,是java程序的运行环境 jre jvm基础类库 jdk jre编译工具 javase jdkide工具 javaee javase应用服务器 jvm的内存结构: 程序…...

WPF中的控件

内容控件:label、border Window控件 Label控件 Border控件 内容控件 Button控件 点击取消按钮关闭程序;点击登录按钮打开BorderWindow窗口。 TextBox控件 PasswordBox控件 TextBlock控件 加载窗口时显示TextBlock中的内容 RadioButton控件 CheckBox控件…...

Java下对象的序列化和反序列化(写出和读入)

代码如下: public class MyWork {public static void main(String[] args) throws IOException, ClassNotFoundException {//序列化File f new File("testFile/testObject.txt");ObjectOutputStream oos new ObjectOutputStream(new FileOutputStream(…...

基于springboot的洗衣店订单管理系统

目录 前言 一、技术栈 二、系统功能介绍 顾客信息管理 店家信息管理 店铺信息管理 洗衣信息管理 预约功能 洗衣信息 交流区 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 随着信息互联网信息的飞速发展,无纸化作业变成了一种趋势&#x…...

Llama2部署踩坑

1、权重是.bin,但是报错找不到.safetensors 明明权重文件是.bin,但是却提示我缺少.safetensors。最后发现好像是 llama2-7b这个模型文件不行,必须要llama2-7b-chat这个模型才能读取的通,具体原因还暂不明确。...

Adams齿轮副

1.运动副 添加旋转副的时候,必须先物体后公共part(即此处的ground),最后再选择质心点 2.啮合点 啮合点marker的z轴必须是齿轮分度圆的切线方向 3.啮合点 两齿轮的旋转副,和啮合点,即cv marker ,必须属…...

Elasticsearch keyword 中的 ignore_above配置项

1. ignore_above 关于es mapping的keyword ignore_above配置项的解释如下: Do not index any string longer than this value. Defaults to 2147483647 so that all values would be accepted. 不会索引大于ignore_above配置值的数据,默认值2147483647字…...

RabbitMQ原理(一):基础知识

文章目录 1.初识MQ1.1.同步调用1.2.异步调用1.3.技术选型2.RabbitMQ2.1.安装2.2.收发消息2.2.1.交换机2.2.2.队列2.2.3.绑定关系2.2.4.发送消息2.3.数据隔离2.3.1.用户管理2.3.2.virtual host微服务一旦拆分,必然涉及到服务之间的相互调用,目前我们服务之间调用采用的都是基于…...

[Linux]Git

文章摘于GitHub博主geeeeeeeeek 文章目录 1.1 Git 简易指南创建新仓库工作流添加与提交推送改动 1.2 创建代码仓库git init用法讨论裸仓库 例子 git clone用法讨论仓库间协作 例子用法讨论栗子 1.3 保存你的更改git add用法讨论缓存区 栗子 git commit用法讨论记录快照&#xf…...

ChatGPT终于可以进行网络搜索 内容不再限于2021年9月前

微软和谷歌已经让旗下聊天机器人进行网上搜索,并提供原始材料的链接,以提高信息共享的可信度和范围。但是,ChatGPT迄今为止只接受了有时间限制的训练数据,这些数据仅限于从互联网上收集的2021年9月之前的信息。在周三的一系列推文…...

uni-app:实现页面效果1

效果 代码 <template><view><view class"add"><image :src"add_icon" mode""></image></view><view class"container_position"><view class"container_info"><view c…...

归一化和标准化的联系与区别及建议

归一化和标准化是数据预处理中常用的两种方法。它们都是为了调整数据的尺度,使得数据更符合我们的分析需求。虽然二者的目的相同但是具体实现方式和适用场景却有所不同。下面,我们来详细介绍-下它们的联系和区别。 一、联系 归一化和标准化都能够使得数据的尽度缩放到不同的…...

数据结构--栈的实现

数据结构–栈的实现 1.栈的概念和结构&#xff1a; 栈的概念&#xff1a;栈是一种特殊的线性表&#xff0c;其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端 称为栈顶&#xff0c;另一端称为栈底。栈中的数据元素遵守后进先出LIFO&#xff08;Las…...

第十章 异常

python使用异常的特殊对象管理程序执行期间发生的错误。每当发生错误时&#xff0c;python会创建异常对象。如果编写了处理该异常的代码&#xff0c;程序将继续运行&#xff1b;如果未处理&#xff0c;程序将显示traceback。 异常是使用try-except代码块处理的。使用try-excep…...

Rust冒泡排序

Rust冒泡排序 这段代码定义了一个名为 bubble_sort 的函数&#xff0c;接受一个可变的整数类型数组作为输入&#xff0c;然后使用嵌套的循环来实现冒泡排序。外部循环从数组的第一个元素开始迭代到倒数第二个元素&#xff0c;内部循环从数组的第一个元素开始迭代到倒数第二个元…...

麒麟信安服务器操作系统V3.5.2重磅发布!

9月25日&#xff0c;麒麟信安基于openEuler 22.03 LTS SP1版本的商业发行版——麒麟信安服务器操作系统V3.5.2正式发布。 麒麟信安服务器操作系统V3定位于电力、金融、政务、能源、国防、工业等领域信息系统建设&#xff0c;以安全、稳定、高效为突破点&#xff0c;满足重要行…...

密码技术 (1) - 对称密码

一. 前言 对称密码是指加密数据和解密数据使用的是相同的秘钥。发送者使用秘钥将加密后的数据发送给接受者&#xff0c;接收者收到数据后用相同的秘钥解密&#xff0c;恢复原始数据。 对称密码具有加密和解密快速的特点&#xff0c;适用于需要快速加密的场景&#xff0c;常用的…...

基于PYQT5的GUI开发系列教程【二】QT五个布局的介绍与运用

目录 本文概述 作者介绍 创建主窗口 水平布局 垂直布局 栅格布局 分裂器水平布局 分裂器垂直布局 自由布局 取消原先控件的布局的方法 尾言 本文概述 PYQT5是一个基于python的可视化GUI开发框架&#xff0c;具有容易上手&#xff0c;界面美观&#xff0c;多平台…...

Cadence PCB 焊盘和封装

封装(Packaging) 封装指的是在电子元件制造中将电子元件(例如集成电路芯片、电子元器件等)进行物理保护和连接的过程。封装通常涉及将电子元件封装到外部保护壳或包装中,以确保其正常运作、连接到电路板并保护它们免受环境因素的影响。 封装的主要目标包括以下几个方面:…...

正在等待操作系统重新启动。 请重新启动计算机以安装autocad 2024。

正在等待操作系统重新启动。 请重新启动计算机以安装autocad 2024。 这是刚启动Autodesk 2024产品就弹出的弹窗&#xff0c;重启之后启动还是有这个 一直阻止安装程序运行 出现问题的原因是安装包存在问题 使用正确的安装包即可解决这个问题 需要的朋友查看图片或者评伦取…...

麻省理工博士生弃博投身数字人类研究:10年、100亿美元、5万台H100或可实现

【导语&#xff1a;麻省理工学院博士生Isaak Freeman放弃攻读博士学位&#xff0c;投身数字人类研究。他认为人类若保持碳基形态将在智力竞争中被AI淘汰&#xff0c;而将意识迁移到数字基质上是出路&#xff0c;并给出实现数字人类的粗略计算和路线图。】数字人类&#xff1a;从…...

Cron表达式智能解析与生成工具:提升定时任务开发效率

1. 项目概述&#xff1a;一个为Cron表达式减负的智能助手 如果你是一名运维工程师、后端开发者&#xff0c;或者任何需要与定时任务打交道的人&#xff0c;那么你一定对Cron表达式又爱又恨。爱的是它那套简洁而强大的语法&#xff0c;能精准地定义“每月的第一个星期一的凌晨3…...

告别重复点击!淘金币自动化脚本让你每天多出20分钟自由时间

告别重复点击&#xff01;淘金币自动化脚本让你每天多出20分钟自由时间 【免费下载链接】taojinbi 淘宝淘金币自动执行脚本&#xff0c;包含蚂蚁森林收取能量&#xff0c;芭芭农场全任务&#xff0c;解放你的双手 项目地址: https://gitcode.com/gh_mirrors/ta/taojinbi …...

LVGL列表控件实战:5分钟搞定一个带图标和事件响应的菜单界面

LVGL列表控件实战&#xff1a;5分钟打造高交互性嵌入式菜单界面 在嵌入式设备的人机交互设计中&#xff0c;菜单界面是最基础也最关键的组件之一。想象一下&#xff0c;当你需要为智能家居控制面板设计一个简洁明了的操作菜单&#xff0c;或者为工业设备开发一个功能选择界面时…...

3分钟掌握完全离线的实时语音转文字:TMSpeech让你彻底告别云端依赖

3分钟掌握完全离线的实时语音转文字&#xff1a;TMSpeech让你彻底告别云端依赖 【免费下载链接】TMSpeech 腾讯会议摸鱼工具 项目地址: https://gitcode.com/gh_mirrors/tm/TMSpeech 在数字时代&#xff0c;语音转文字已成为现代办公和学习的高效助手&#xff0c;但你是…...

BBDown终极指南:5分钟掌握B站视频本地化完整解决方案

BBDown终极指南&#xff1a;5分钟掌握B站视频本地化完整解决方案 【免费下载链接】BBDown Bilibili Downloader. 一个命令行式哔哩哔哩下载器. 项目地址: https://gitcode.com/gh_mirrors/bb/BBDown 在数字内容爆炸的时代&#xff0c;你是否曾为无法离线观看B站优质视频…...

长期使用Taotoken Token Plan套餐带来的成本控制感受

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 长期使用Taotoken Token Plan套餐带来的成本控制感受 1. 从按需付费到预算规划 对于个人开发者或小型团队而言&#xff0c;大模型…...

Sora 2如何“唤醒”3D Gaussian Splatting?:从神经辐射场到毫秒级动态场景生成的4层技术跃迁解析

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Sora 2与3D Gaussian Splatting融合的范式革命 传统视频生成模型受限于体素网格或NeRF隐式表示的计算开销与几何保真度瓶颈&#xff0c;而Sora 2通过引入时空一致性token压缩机制&#xff0c;与3D Gaus…...

CPT Markets:国际监管框架下的稳健运营

在评估金融服务平台时&#xff0c;监管合规、技术能力、客户服务等维度构成了重要的观察方向。CPT Markets作为业内较为活跃的服务机构&#xff0c;其在这些方面的实践具有一定的参考价值。本文将围绕评测视角&#xff0c;对其综合表现进行系统性的呈现&#xff0c;希望为读者提…...

贝叶斯深度学习不确定性估计:集成学习与MC-Dropout实战对比

1. 项目概述&#xff1a;为什么我们需要量化深度学习的不确定性&#xff1f;在自动驾驶汽车识别前方障碍物、医疗AI系统诊断病灶、或者机器人进行精细操作时&#xff0c;一个错误的预测可能导致灾难性的后果。传统的深度神经网络&#xff08;DNN&#xff09;在这些任务上表现出…...