随笔分类 -  jvm虚拟机

摘要:类加载分为动态加载和静态加载。动态加载是从外存储器中加载类,一般类加载机制分析的也是动态加载。而静态加载本质上是从内存中创建类的实例对象,此时类已经被加载到内存中。 一.静态加载 1. 通过new关键字来创建Test的实例对象。 二.动态加载 1. 通过Class.forName()来加载类,然后调 阅读全文
posted @ 2020-03-03 20:32 w'c's 阅读(1083) 评论(0) 推荐(0)
摘要:VM 中文名java虚拟机,是用来运行java程序的一个平台,这篇文章 主要讲述 JVM的内存模型。 首先JVM将内存划分为了5大块,如下图所示: JVM内存模型 这5大块可以分为 两大类,分别是 线程私有的,和 线程共享的 线程私有的 虚拟机栈,本地方法栈,程序计数器 这块区域的数据是每个线程私有 阅读全文
posted @ 2020-02-12 17:49 w'c's 阅读(127) 评论(0) 推荐(0)
摘要:一、MAT是什么? MAT(Memory Analyzer Tool),一个基于Eclipse的内存分析工具,是一个快速、功能丰富的JAVA heap分析工具,它可以帮助我们查找内存泄漏和减少内存消耗。使用内存分析工具从众多的对象中进行分析,快速的计算出在内存中对象的占用大小,看看是谁阻止了垃圾收集 阅读全文
posted @ 2019-12-19 14:30 w'c's 阅读(981) 评论(0) 推荐(0)
摘要:本文介绍的是Java里一个内建的概念,Finalizer。你可能对它对数家珍,但也可能从未听闻过,这得看你有没有花时间完整地看过一遍java.lang.Object类了。在java.lang.Object里面就有一个finalize()的方法。这个方法的实现是空的,不过一旦实现了这个方法,就会触发J 阅读全文
posted @ 2019-12-19 13:57 w'c's 阅读(518) 评论(0) 推荐(0)
摘要:hotspot:是jvm的核心组件(或者名称),jvm 需要对class文件进行编译成cpu能直接运行的代码。hotspot会对频繁使用的class代码进行缓存,不会再次编译,类似于缓存 client 桌面级的时使用,分配的内存相对于server少 server 适合B/S结构,用于高并发 修改使用 阅读全文
posted @ 2019-08-29 11:57 w'c's 阅读(220) 评论(0) 推荐(0)