JVM
无怨_无悔
了解这个世界,了解更完整的自己 再繁茂的树木都是从根长起的,再多困扰我们的问题都是由一个问题引起的。 所以无论是坏是好,请你珍惜拥有我的机会。
展开
-
Java堆内存是线程共享的?
Java作为一种面向对象的,跨平台语言,其对象、内存等一直是比较难的知识点,所以,即使是一个Java的初学者,也一定或多或少的对JVM有一些了解。可以说,关于JVM的相关知识,基本是每个Java开发者必学的知识点,也是面试的时候必考的知识点。在JVM的内存结构中,比较常见的两个区域就是堆内存和栈内存(如无特指,本文提到的栈均指的是虚拟机栈),关于堆和栈的区别,很多开发者也是如数家珍,有很多书籍...转载 2020-03-10 10:17:00 · 1709 阅读 · 0 评论 -
Java GC调优(下)
4.Sun HotSpot 垃圾回收器概述当永久代和旧生代出发GC时,除CMS外都会发生Full GC首先按照 新生代配置的GC,发生Mintor GC 再按照旧生代配置的GC,对旧生代和永久代GC 若JVM 对Mintor GC后可能会发生晋升失败,则直接采用旧生代配置的GC对Young,old,Perm进行GC.一些术语解释图1图2新生代可用GC...原创 2020-02-04 19:53:40 · 632 阅读 · 0 评论 -
Java GC调优(上)
简介图1Java-HotSpot是什么?虚拟机(JVM)版本是25.4-b25java -version出来信息包含两部分:Java软件包发行版本信息和内核(JVM)版本信息。java的发行包包含三种类型Java ME,Java SE,Java EE,发行包就相当于对外销售的产品包,不同发行包会删减部分特性,因此版本信息首先显示发行包类型和版本。JV...原创 2020-02-04 19:54:00 · 372 阅读 · 0 评论 -
Java 内存模型及GC原理
一、Java内存模型按照官方的说法:Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。JVM主要管理两种类型内存:堆和非堆,堆内存(Heap Memory)是在 Java 虚拟机启动时创建,非堆内存(Non-heap Memory)是在JVM堆之外的内存。简单来说,堆是Java代码可及的内存,留给开发人员使用的;非堆是JVM留给自己转载 2016-03-14 22:41:19 · 325 阅读 · 0 评论 -
Java内存模型及GC原理java内存模型 Java内存模型及GC原理 Java内存模型及GC原理 sun官方网站:sun java 虚拟机模型 Java内存模型及GC原理 JVM内存模型中分两
java内存模型JVM内存模型中分两大块,一块是 NEW Generation, 另一块是Old Generation. 在New Generation中,有一个叫Eden的空间,主要是用来存放新生的对象,还有两个Survivor Spaces(from,to), 它们用来存放每次垃圾回收后存活下来的对象。在Old Generation中,主要存转载 2016-03-14 22:43:32 · 347 阅读 · 0 评论 -
多线程-JVM程序运行原理(1)
Java与JVM(Java Virtual Machine 简称:Java虚拟机)Java与JVMJVM运行时数据区线程共享: 所有线程能访问这块内存数据,随虚拟机或者GC而创建和销毁。线程独占: 每个线程都会有它独立的空间,随线程生命周期而创建和销毁。方法区作用:存储加载类信息,常量,变量,JIT编译后的代码等数据.GC:方法区的垃圾回收,但回收效率低 ...原创 2019-05-23 16:50:33 · 726 阅读 · 0 评论