JVM
JVM
baburwang
让分享成就你我!
展开
-
JVM之Java内存区域与Java对象
Java内存区域与Java对象1. Java 内存区域1.1 运行时数据区域1.1.1 程序计数器1.1.2 Java 虚拟机栈1.1.3 本地方法栈1.1.4 Java 堆1.1.5 方法区1.1.6 运行时常量池1.2 直接内存2. Java对象在虚拟机中的创建与访问定位2.1 对象的创建2.2 对象的内存布局2.2.1 对象头2.2.2 实例数据2.2.3 对齐填充2.3 对象的访问定位2.3.1 句柄方式2.3.2 直接指针1. Java 内存区域原创 2020-05-25 21:46:37 · 559 阅读 · 0 评论 -
JVM之垃圾收集器与内存分配策略
垃圾收集器与内存分配策略1. 对象存活判定法1.1 引用计数法1.2 可达性分析2. 引用分类2.1 强引用2.2 软引用2.3 弱引用2.4 虚引用3. 垃圾收集算法3.1 标记 - 清除算法3.2 标记 - 复制算法3.3 标记 - 整理算法3.4 分代收集算法4. GC4.1 Partial GC4.1.1 Minor GC/Young GC4.1.2 Major GC/Old GC4.1.3 Mixed GC4.2 FULL GC5. 垃圾收集器5.1 Serial 收集器5.2 ParNew 收集原创 2020-05-26 11:40:37 · 817 阅读 · 0 评论 -
JVM 工具
JVM工具jps作用命令格式参数说明示例Jstat作用命令格式参数说明示例Jinfo作用命令格式参数说明Jmap作用命令格式参数说明Jhat作用jstack作用命令格式参数说明JConsole作用主要功能VisualVM作用jps作用 查看当前Java进程的工具命令格式 ...原创 2019-09-05 16:43:14 · 736 阅读 · 0 评论 -
JVM--类加载机制(超细节)
虚拟机类加载机制1. 类加载1.1 类的生命周期1.2 类加载流程1.3 类的加载、连接与初始化1.3.1 加载1.3.2 连接1.3.2.1 验证1.3.2.2 准备1.3.2.3 解析1.3.3 初始化1.3.3.1 类的初始化时机1.3.3.1.1 主动使用1.3.3.1.2 被动使用示例一示例二1.3.3.1.3 类的初始化示例示例一示例二示例三示例四1.3.4 类加载器准备阶段和初始化阶段的意义2. 类加载器2.1 JDK自带类加载器的分类2.1.1 启动类加载器(Bootstrap ClassL原创 2020-05-27 02:42:52 · 1090 阅读 · 0 评论 -
JVM之Java内存模型与线程
Java内存模型与线程1. 内存模型1.1 缓存一致性1.2 Java 内存模型1.2.1 主内存与工作内存1.2.2 内存间交互操作1.2.3 volatile 变量的特殊规则1.2.4 原子性、可见性与有序性1.2.5 先行发生原则2. Java 与线程2.1 线程的实现2.1.1 内核线程实现2.1.2 用户线程实现2.1.3 混合实现2.1.4 Java 线程的实现2.2 Java 线程调度2.3 状态转换1. 内存模型1.1 缓存一致性 &nbs原创 2020-05-28 23:06:00 · 500 阅读 · 0 评论 -
JVM之线程安全与锁优化
线程安全与锁优化1. 线程安全1.1 Java 语言中的线程安全1.1.1 不可变1.1.2 绝对线程安全1.1.3 相对线程安全1.1.4 线程兼容1.1.5 线程对立1.2 线程安全的实现方法1.2.1 互斥同步1.2.2 非阻塞同步1.2.3 无同步方案2. 锁优化2.1 自旋锁与自适应自旋2.2 锁消除2.3 锁粗化2.4 轻量级锁2.5 偏向锁1. 线程安全 当多个线程访问同一个对象时,如果不用考虑这些线程在运行原创 2020-05-29 21:21:30 · 455 阅读 · 0 评论 -
深入理解JVM-字节码
package com.wangzhao.jvm.bytecode;/** * @author wangzhao * @date 2019/7/18 21:17 */public class MyTest1 { private int a = 1; public int getA() { return a; } public voi...原创 2019-07-22 11:14:27 · 592 阅读 · 0 评论 -
透过字节码研究动态代理
看过关于不少关于动态代理的博客,但是大多数的博客都是那种教你怎么使用而已,对于我个人来说,始终是不能够理解其具体实现如何?其方法参数的作用是如何?相信你通过本篇博客一定可以有更加深入的理解,而不是仅仅局限于使用。 在深入理解原理...原创 2019-07-21 22:54:16 · 302 阅读 · 0 评论 -
SPI
本文装载自:书呆子Rico原文链接:https://blog.csdn.net/justloveyou_/article/details/72231425SPI和双亲委派模型一、简介SPI 机制简介SPI机制带来的问题二、线程上下文类加载器三、违背双亲委派案例之JDBC1、JDBC驱动注册的常用几种方式方式一:Class.forName(“com.mysql.jdbc.Driver”)方式...转载 2019-11-18 21:38:52 · 257 阅读 · 0 评论