JAVA虚拟机内存结构示意图 各区域介绍 程序计数器 程序计数器,用来记录每一个线程正在执行的指令地址。每一个线程有一个线程计数器,因此该区域是“线程私有”的内存,生命周期与线程相同。如果线程执行的是native本地方法,则程序计数器为空。 虚拟机栈区 每当线程执行一个方法时,虚拟机就会在这个区域创 ...
分类:
编程语言 时间:
2018-01-17 12:34:03
阅读次数:
253
java虚拟机运行时数据区: 线程共享:方法区,堆,本地方法库。 线程私有的内存:虚拟机栈,本地方法栈,程序计数器。 1)线程共享 方法区: 用来存储被虚拟机加载的类信息,常量,静态变量,即时编译器编译后的代码等数据。被所有线程共享。 堆: 内存最大的一块,被所有线程共享。存放对象实例和数组。是垃圾 ...
分类:
其他好文 时间:
2018-01-11 22:32:06
阅读次数:
196
JVM 垃圾回收 这篇文章尝试对当前主流的JVM垃圾回收机制进行简要介绍。 一 垃圾回收讨论的范围 JVM 的内存分为方法区,JVM栈,本地方法栈,堆,程序计数器等几个部分。 其中程序计数器,JVM栈,本地方法栈三部分的生命周期与线程相同,随着线程的回收这几部分内存其生命周期自然结束而得以回收。 而 ...
分类:
其他好文 时间:
2018-01-08 23:48:47
阅读次数:
229
理论 jvm虚拟内存分布: 程序计数器是jvm执行程序的流水线,存放一些跳转指令。 本地方法栈是jvm调用操作系统方法所使用的栈。 虚拟机栈是jvm执行java代码所使用的栈。 方法区存放了一些常量、静态变量、类信息等,可以理解成class文件在内存中的存放位置。 虚拟机堆是jvm执行java代码所 ...
分类:
编程语言 时间:
2017-12-21 23:07:31
阅读次数:
197
一、JVM 内存模型 根据 JVM 规范,JVM 内存共分为虚拟机栈、堆、方法区、程序计数器、本地方法栈五个部分。 1、虚拟机栈:每个线程有一个私有的栈,随着线程的创建而创建。栈里面存着的是一种叫“栈帧”的东西,每个方法会创 建一个栈帧,栈帧中存放了局部变量表(基本数据类型和对象引用)、操作数栈、方 ...
分类:
编程语言 时间:
2017-12-20 17:52:58
阅读次数:
173
本文是学习时的自我总结,用于日后温习。如有错误还望谅解,不吝赐教 此处附上本文出处:http://blog.csdn.net/hjxgood/article/details/53896229 一、什么是JVM JVM是一个虚构出来的计算机,实现了编程语言(如Java、Scala)的与平台的无关性 二 ...
分类:
其他好文 时间:
2017-12-17 19:26:35
阅读次数:
122
1 JVM的内存模型 1.1 堆空间 每个jvm都有一个堆,所有的对象都放在这里。 1.2 java栈空间 每个线程都有一个java栈,所有的java栈都放在这里。 1.3 本地方法栈 每个线程都有一个本地方法栈。 1.4 pc寄存器 每个线程都有一个pc寄存器。 1.5 方法存储区 每个jvm只有 ...
分类:
其他好文 时间:
2017-12-17 12:16:48
阅读次数:
97
本文纯粹为阅读深入理解jvm虚拟机手记文章。 我们知道,jvm分为5部分:程序计数器、虚拟机栈、本地方法栈、方法区、堆。其中,前三部分线程私有,这几个区域不太需要考虑回收问题,因为一般随着线程结束,内存自然就回收了;但方法区跟堆就不一样,需要根据情况具体分析其中对象的创建与回收问题。 如何判断对象已 ...
分类:
其他好文 时间:
2017-12-16 23:10:16
阅读次数:
246
ArrayList是java集合框架中List体系下List接口的一个实现类。 特点: Resizable(大小可调,尺寸可变)-array (Resizable-array implementation of the <tt>List</tt> interface.This class provi ...
分类:
其他好文 时间:
2017-12-11 00:55:19
阅读次数:
196
在前端开发中,我们会频繁的修改html、css、js,然后刷新页面,开效果,再调整,再刷新,不知不觉会浪费掉我们很多时间。有没有什么方法,我在编辑器里面改了代码以后,只要保存,浏览器就能实时刷新。经过不懈的努力,发现了这么一个工具 livereload。这是一款能根据你本地文件(html、css、j ...
分类:
其他好文 时间:
2017-12-05 13:28:35
阅读次数:
130