SpringBoot自动配置源码分析

2022-12-24

1.Springboot 启动注解分析 springboot启动类 //SpringBootApplication注解用来标注一个主程序类,说明是一个springboot应用 @SpringBootApplication public ...

1,288 热度

SpringBoot启动原理分析

2022-12-22

1. SpringBoot如何通过jar包启动 1.1. java -jar做了什么? https://docs.oracle.com/javase/tutorial/deployment/jar/run.html To indicate which class is ...

3,405 热度

JVM系列-内存分配

2022-12-17

1.对象优先在Eden区分配 VM参数: -Xms20M -Xmx20M -Xmn10M -XX:+PrintGCDetails -verbose:gc -XX:SurvivorRatio=8 -XX:+UseSerialGC 2.大对象直接进入老年...

594 热度

JVM系列-垃圾收集器

2022-12-15

分类 串行 不仅仅说明它只使用一个CPU或一条收集线程去完成垃圾收集工作,更重要的是在它收集垃圾时,必须暂停其他所有工作线程,知道它收集结束。(Stop-Th...

417 热度

JVM系列-垃圾收集算法

2022-12-11

垃圾收集(GC) Garbage Collection需要完成的事情: 1.哪些内存需要回收? 2.什么时候回收? 3.如何回收? 如何判断对象可以回收 1.引用计数算法(Reference...

422 热度

Java线程调度方式

2022-12-10

线程调度是指系统为线程分配处理器使用权的过程。 主要调度方式有两种: 1. 协同式线程调度(Cooperative Threads-Scheduling) 一个线程在执行自己的任务...

308 热度

volatile关键字的作用

2022-12-10

主要作用 保证共享变量可见性 防止指令重排 volatile如何禁止指令重排序的? volatile关键字通过“内存屏障”来防止指令被重排序。 下面是基于保守策略的J...

374 热度

JVM系列-Java内存模型(JMM)

2022-12-08

什么是JMM模型 Java内存模型(Java Memory Model简称JMM)是一种抽象的概念,并不真实存在,它描述的是一组规则或规范,通过这组规范定义了程序中各个变量(包...

319 热度

JVM系列-类加载机制

2022-12-04

类的生命周期 类加载的时机 加载、验证、准备、初始化和卸载这五个阶段的顺序是确定的,但解析阶段则不一定,它在某些情况下可以在初始化阶段之后再开始。 ...

381 热度

JVM系列-发展史

2022-12-03

Sun Classic: 世界上第一款商用 Java 虚拟机; 只能使用纯解释器方式来执行 Java 代码,也可以使用外挂JIT编译器,JIT 会完全接管虚拟机的执行系统,但是...

338 热度