首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Ed
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
7
文章 6
沸点 1
赞
7
返回
|
搜索文章
最新
热门
并发编程的挑战
并发编程的目的是为了让程序运行的更快。 在进程并发编程时,如果希望通过多线程执行任务让程序运行的更快,会面临非常多的挑战,比如:上下文切换的问题,死锁的问题,以及受限于硬件和软件的资源限制问题。 即便是单处理器也支持多线程执行代码,CPU通过给每个线程分配CPU时间片来实现这个…
虚拟机晚期(运行期)优化
当虚拟机发现某个方法或代码运行特别频繁时,就会把这些代码认定为"热点代码"。为了提高热点代码的执行效率,在运行时,虚拟机将会把这些代码编译成本地平台相关的机器码,完成这个任务的编译器称为即时编辑器(JIT编译器) 当程序需要迅速启动和执行的时候,解释器可以首先发挥作用,省去编译…
虚拟机早期(编译期)优化
jav语言的编译器其实是一段不确定的操作过程,因为它可能是指一个其阿奴单编译器,把*.java文件转成*.class文件的过程,也可能是指虚拟机的后端运行期编译器,吧字节码转成机器码的过程。还可能是指使用静态提前编译器,直接把*.java文件编译成本地机器码代码的过程。 前端编…
虚拟机字节码执行引擎
执行引擎是java虚拟机最核心的组成部分之一,“虚拟机”是一个相对的“物理机”的概念,这两种机器都有代码执行能力,其区别是物理机的执行引擎直接建立在处理器、硬件、指令集和操作系统层面上的,而虚拟机的执行引擎是自己实现的,因此可以自行制定指令集与执行引擎的结构体系,并且能够执行那…
虚拟机的类加载机制
虚拟机把描述的数据从class文件加载到内存,并对数据进行校验,转换解析和初始化,最终形成可以被虚拟机直接使用的java类型,这就是虚拟机直接使用的java类型,这就是虚拟机的类加载机制。 类从被加载到虚拟机内存开始到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析…
jvm的类文件结构
class文件是以一组8位字节为基础的二进制流。 class文件格式采用一种类似于C语言结构体的伪结构来存储数据,这种伪结构来存储数据,这种伪结构只有两种数据类型:无符号数和表。 表是有多个无符号数或者其他表构成的符合数据类型。 每个class文件的头四个字节称为魔数,他的唯一…
jvm垃圾收集算法和垃圾回收器
给对象添加一个引用计数器,每当有一个地方引用它时,计数器的值就加1,当引用失效时,计数器的值减1,当计数器的值为0时,代表该对象是无用的对象. 引用计数器算法,实现简单,判断效率也很高,但是不能解决循环引用的问题. 主要是通过一系列的“GC ROOts”进行判断,从“GC Ro…
jvm的运行时数据结构
程序计数器是一块较小的内存空间,可以看作是当前线程执行字节码的行号。 是线程私有的内存。 唯一一个没有规定OutOfMemoryError异常的内存区域。 是线程私有的内存。 如果栈不支持动态扩展他可能会抛出StackOverFlowError,如果支持动态扩展可能会抛出Out…
个人成就
文章被点赞
12
文章被阅读
2,229
掘力值
141
关注了
0
关注者
1
收藏集
3
关注标签
9
加入于
2018-05-08