自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 JVM系列-第4章-虚拟机栈

由于跨平台性的设计,Java的指令都是根据栈来设计的。不同平台CPU架构不同,所以不能设计为基于寄存器的【如果设计成基于寄存器的,耦合度高,性能会有所提升,因为可以对具体的CPU架构进行优化,但是跨平台性大大降低】。优点是跨平台,指令集小,编译器容易实现,缺点是性能下降,实现同样的功能需要更多的指令。具体问题具体分析如果只有一个线程才可以操作此数据,则必是线程安全的。如果有多个线程操作此数据,则此数据是共享数据。如果不考虑同步机制的话,会存在线程安全问题。

2023-05-16 09:11:25 165

原创 JVM系列-第3章-运行时数据区

本节主要讲的是运行时数据区,也就是下图这部分,它是在类加载完成后的阶段当我们通过前面的:类的加载 --> 验证 --> 准备 --> 解析 --> 初始化,这几个阶段完成后,就会用到执行引擎对我们的类进行使用,同时执行引擎将会使用到我们运行时数据区类比一下也就是大厨做饭,我们把大厨后面的东西(切好的菜,刀,调料),比作是运行时数据区。而厨师可以类比于执行引擎,将通过准备的东西进行制作成精美的菜品。

2023-05-16 09:10:41 112 1

原创 JVM系列-第2章-类加载子系统

英文版中文版注意:方法区只有HotSpot虚拟机有,J9,JRockit都没有如果自己想手写一个Java虚拟机的话,主要考虑哪些结构呢?类加载器执行引擎System . out . println("你的大恩大德,我下辈子再报!");} }它的加载过程是怎么样的呢?执行 main() 方法(静态方法)就需要先加载main方法所在类 HelloLoader加载成功,则进行链接、初始化等操作。完成后调用 HelloLoader 类中的静态方法 main加载失败则抛出异常。

2023-05-16 09:08:34 154 1

原创 JVM系列-第1章-JVM与Java体系结构

JVM架构体系

2023-05-16 09:07:46 154 1

原创 Midjourney入门手册

闲来无事可以转转我的个人博客使用 Midjourney 首先需要创建Discord账号,Midjourney和Discord的关系就像小程序和微信的关系一样。国内网络无法直接访问Discord,这就需要你家网络会**“魔法”**(梯子)。

2023-05-09 14:58:09 661

原创 后端开发四种层式结构

跳表,又叫做跳跃表、跳跃列表,在有序链表的基础上增加了“跳跃”的功能跳表在原来的有序链表上加上了多级索引,通过索引来快速查找;可以支持快速的删除、插入和查找操作。跳表实际上是一种增加了前向指针的链表,是一种随机化的数据结构Redis中的中的MemTable都用到了跳表对比平衡树, 跳表的实现和维护会更加简单, 跳表的搜索、删除、添加的平均时间复杂度是 O(logn)它允许快速查询,插入和删除一个有序连续元素的数据链表。跳跃列表的平均查找和插入时间复杂度都是O(logn)。

2023-05-09 14:53:44 831

原创 将代码打包上传Nexus

将代码打包上传Nexus在idea中双击ctrl键在弹出的窗口中输入一下命令使用命令mvn package deploy -Dmaven.test.skip -D maven.javadoc.skip=true -Dautoconfig.skip=true -Dautoconfig.skip -pl jar包名称 -am -DaltDeploymentRepository=snapshots::default:: 个人nexus仓库的http地址 -U...

2022-01-19 12:00:42 314

原创 ElasticSearh入门

ElasticSearch入门使用本文档针对与想学习elasticSeach的小白如果有一定的点赞数,后续更新java api的使用,和elasticSeach服务的的手把手搭建,以及各种分词器的安装(拼音分词器,ik分词器)一、基础知识mapping是对索引库中文档的约束,常见的mapping属性包括:type:字段数据类型,常见的简单类型有:字符串:text(可分词的文本)、keyword(精确值,例如:品牌、国家、ip地址)数值:long、integer、short、byte、dou

2022-01-05 16:48:26 825

原创 修改pom版本号

这里写自定义目录标题修改pom版本号命令maven命令功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入修改pom版本号命令由于在工作过程中需要更新应用版本,一个个的修改版本号非常的麻烦,我们可以使用命令一键修改maven命令

2021-12-31 11:18:08 1444 2

原创 Optional类的基本操作

Optional类这个Optional类注意是解决空指针的问题1. 以前对null 的处理@Testpublic void test01(){ //String userName = "张三"; String userName = null; if(userName != null) { System.out.println("字符串的长度:" + userName.length()); } else { System.out.println("字符串为空"); }}2. Opt

2021-12-31 11:16:26 190

OOM问题本地复现调试

用于本地复现dump日志, 适用于新手尝试JVM调优

2023-03-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除