JVM概述

Java 虚拟机(Java virtual machine,JVM)是运行 Java 程序必不可少的机制。JVM实现了Java语言最重要的特征:即平台无关性,同时学习JVM也是一个java程序员在成长过程中的必经之路。本系列博客总结了笔者在学习JVM时的一些经验和面试要点,希望可以帮助到大家。

为了方便阅读,把本系列博文的目录整理如下:

一、JVM内存区域详解
二、OutOfMemoryError实战

以上两篇博客主要讲了JVM中的内存分配,包括哪部分区域,什么样的代码可能会导致内存溢出异常,各个区域出现内存溢出异常的原因。

三、JVM之对象的创建
四、Java对象的内存布局
五、Java对象的访问定位
六、jvm之如何判断对象已死?
七、引用(reference)详解

jvm垃圾回收主要是对于java对象的内存回收,所以以上四篇博客详细的讲解了一个对象从生到死的过程,包括对象的创建,对象的内存分配,如何访问一个对象,如何判断一个对象是否死亡。最后第七篇博客详细介绍了引用,建议读者详细阅读。

八、java对象和方法区的垃圾回收
九、垃圾回收算法
十、垃圾收集器

以上三篇博客是JVM垃圾回收的理论部分,介绍了对象和方法区的垃圾回收、垃圾回收算法和垃圾回收器,也是面试当中的重点内容。

十一、GC日志详解
十二、内存回收与分配策略
十三、JDK的命令行工具

十一到十三是JVM调优的实战部分,包括如何阅读GC日志,内存回收与分配策略,还有如何利用JDK当中自带的工具来分析java内存的使用情况。

Java内存模型
volatile变量详解
先行发生原则(happens-before)介绍
线程的实现方式
Java线程调度与线程优先级
线程安全

以上六篇博文从jvm的角度介绍了并发的一些原理,介绍了虚拟机如何实现多线程、多线程之间由于共享和竞争数据而导致的一系列问题及解决方案。
下图是以上六篇博文的思维导图:
mark

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值