
JVM
文章平均质量分 90
xingze_W
Stay hungry, Stay young!!!
展开
-
JVM系列0(JVM、设置JVM参数)
文章目录内存管理内存泄漏(Memory Leak)如何检测内存泄漏 内存管理 Java的内存管理就是对象的分配和释放问题。在Java中,程序员需要通过关键字new为每个对象申请内存空间 (基本类型除外),所有的对象都在堆 (Heap)中分配空间。另外,对象的释放是由GC决定和执行的。在Java中,内存的分配是由程序完成的,而内存的释放是有GC完成的,这种收支两条线的方法确实简化了程序员的工作。但同...原创 2019-11-20 09:51:39 · 291 阅读 · 1 评论 -
Java的异常处理、自定义异常、try-with-resources
Java的异常处理机制 Java通过面向对象的方式对异常进行处理,Java把异常按照不同的类型进行分类,并提供了良好的接口。在Java中,每个异常都是一个Throwable对象。Throwable类是所有异常类的父类。 Java的异常处理关键字 Java的异常处理主要依赖于:try、catch、finally、throw、throws五个关键字,关键字作用如下 try关键字后紧跟一个花括号括起来...原创 2019-10-03 15:48:00 · 829 阅读 · 0 评论 -
JVM系列一(类加载机制深度解析:类加载过程、类加载器、双亲委派机制、类加载时机、类的初始化步骤)
1. 类加载运行全过程 2. 类加载器分类、双亲委派机制 2.1 类加载器分类 2.2 类加载器的工作机制(重点:双亲委派机制) 2.3 打破双亲委派机制的一种常见方法 3. 类加载的时机 4. 类的初始化步骤原创 2019-07-28 23:27:17 · 720 阅读 · 1 评论 -
JVM系列二(JVM结构深度解析:JVM整体结构及内存模型、内存参数设置、对象创建过程、内存分配流程)
Java内存区域划分 程序计数器:存放下一条要执行的程序的指令的地址,每个线程都有一个程序计数器,它们之间互不影响。即程序计数器是线程私有的。 Java虚拟机栈:保存了局部变量、部分结果,并参与方法的调用和返回。也是线程私有的。 本地方法栈:本地方法栈和Java虚拟机栈的功能相似,Java虚拟机栈用于管理Java函数的调用,而本地方法栈用于管理本地方法(Native方法)的调用。也是线程私有的。..................原创 2020-07-19 22:07:13 · 498 阅读 · 1 评论 -
JVM系列四(JVM参数及调优(常用命令、调优工具、JVM运行情况预估、优化思路))
文章目录JVM调优的参数垃圾回收统计信息JVM调优常见的Java内存溢出 JVM调优的参数 -Xms:初始堆大小,如-Xms256m -Xmx:最大堆大小,如-Xmx512m -Xmn:年轻代大小 -Xss:设置每个线程的堆栈大小,JDK1.5+每个线程堆栈大小为1M -XX:NewSize:设置年轻代大小 -XX:MaxNewSize:设置最大年轻代大小 -XX:PermSize:设置老年代大......原创 2019-10-05 14:25:58 · 461 阅读 · 1 评论 -
JVM异常及解决办法
文章目录Java堆溢出虚拟机栈和本地方法栈溢出方法区和运行时常量池溢出 在Java虚拟机规范中,除了程序计数器外,虚拟机内存的其他几个运行时区域都有发生OutOfMemoryError异常的可能。下面是一些常见的异常及解决方法: Java堆溢出 Java堆用于存储对象实例,只要不断的创建对象,并保证GC Root到...原创 2019-10-19 20:45:53 · 1742 阅读 · 1 评论