学习总结
闲鱼Lj
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JAVA虚拟机学习总结-内存区域
虚拟机学习总结-内存区域 虚拟机的内存区域划分 JAVA虚拟机在执行java程序的过程中会把它所管理的内存划分为若干个不同的数据区域 1.程序计数器 当前线程所执行的字节码的行号指示器,字节码解释器就是通过改变这个计数器的值来选取下一条需要执行的字节码指令。每条线程都需要有一个独立的程序计算器(线程私有)。如果线程正在执行的是一个java方法,计数器记录的就是正在执行的虚拟机字节码...原创 2018-05-18 21:31:52 · 198 阅读 · 0 评论 -
JAVA虚拟机学习总结——类加载机制
虚拟机学习总结 类加载机制 虚拟机把描述类的信息从Class文件中加载到内存,并对数据进行校验,解析和初始化,最终形成可以被虚拟机直接使用的过程。 类型的加载,连接和初始化都是在运行期间完成的一运行期动态加载和动态连接。 类的生命周期:加载连接初始化使用-卸载,其中连接又包括:校验,准备和解析。其中,除了解析以外,其他阶段都是按部就班地“开始”(通常会在一个阶段执行的过程中调用,激活另...原创 2018-05-18 22:41:28 · 144 阅读 · 0 评论 -
Spring Cloud 学习总结
Spring Cloud 学习笔记 微服务架构 微服务架构风格是一种使用一套小服务来开发单个应用的方式途径,每个服务运行在自己的进程中,服务之间相互协调,互相配合,为用户提供最终价值。服务之间使用轻量级机制通信,通常是HTTP的RESTful API,这些服务基于业务能力构建,并能够通过自动化部署机制来独立部署,这些服务使用不同的编程语言实现,以及不同数据存储技术,并保持最低限度的集中式管...原创 2018-05-14 07:17:44 · 1024 阅读 · 0 评论 -
JAVA虚拟机学习总结——运行期优化
JAVA虚拟机的运行期优化 解释器与编译器 java 程序最初就是通过解释器进行解释执行的。当虚拟机发现某个方法或代码块的运行特别频繁时,就会把这些代码认定为“热点代码”。为了提高热点代码的运行效率,在运行时,虚拟机会把这些代码编译成于本地平台相关的机器码,并进行各个层次的优化,完成这个任务的编译器称为即时编译器。 解释器与编译器共存 在程序启动的时候,解释器可以首先发挥作用,省...原创 2018-05-25 20:28:51 · 270 阅读 · 0 评论 -
JAVA虚拟机学习总结——垃圾收集与内存回收
垃圾收集器与内存回收策略 判断对象是否已死 引用计数器 可达性分析算法 四种引用类型 强引用:只要这类引用还存在,就不会回收。 软引用:在系统将要发生内存溢出异常之前,将会把这些对象列进回收范围之中进行二次回收。 弱引用:只能生存到下一次垃圾收集发生之前。当垃圾收集工作时,无论当前内存是否足够,都会回收掉只被弱引用关联的对象。 虚引用:一个对象是否有虚引用存在,完全不会对其生...原创 2018-05-26 08:10:36 · 304 阅读 · 0 评论 -
JAVA虚拟机学习总结——虚拟机字节码执行引擎
运行时的栈帧结构 栈帧是用于支持虚拟机进行方法调用和方法执行的数据结构,它是虚拟机运行时数据区中的虚拟机栈的栈元素。 栈帧存储了方法的局部变量表,操作数栈,动态连接和方法返回值等信息每一个方法从调用至执行完成的过程,都对应者栈帧在虚拟机栈里面从入找到出栈的过程。 在编译程序代码的时候,栈帧需要多大的局部变量表,多深的操作数栈都已经完全确定,并且写入到了Code属性之中,因此一个栈帧需要分配多...原创 2018-06-03 08:53:42 · 230 阅读 · 0 评论 -
JAVA虚拟机学习总结——Java内存模型与线程
JAVA与线程 线程是CPU调度的基本单位 JAVA线程的调度 协同式调度 线程的执行时间由线程本身控制,线程把自己的工作执行完成以后,会主动通知系统切换到另一个线程上 抢占式调度 每个线程将由系统来分配时间,线程的切换不由线程本身来决定 线程的六种状态 新建 创建后尚未启动的线程 运行 这时的线程可能在运行,也有可能在等待着CPU为它分配时间 ...原创 2018-05-24 07:09:48 · 222 阅读 · 0 评论
分享