上一页 1 2 3 4 5 6 ··· 9 下一页
摘要: 前言 HotSpot采用的是解释器+编译器并存的架构,之前的这篇文章里面已经讲过了,本文只是把即时编译器这块再讲得具体一点而已。当然,其实本文的内容也没多大意义,90%都是概念上的东西,对于实际开发、实际解决项目里面的疑难问题并没有什么太大的帮助,只要看过就好了。 编译对象与触发条件 之前讲过,Su 阅读全文
posted @ 2018-01-30 15:20 申公 阅读(237) 评论(0) 推荐(0) 编辑
摘要: 前言 我们知道我们写的程序经过编译后成为了.class文件,.class文件中描述了类的各种信息,最终都需要加载到虚拟机之后才能运行和使用。而虚拟机如何加载这些.class文件?.class文件的信息进入到虚拟机后会发生什么变化?这些都是本文要讲的内容,文章将会讲解加载类加载的每个阶段Java虚拟机 阅读全文
posted @ 2018-01-30 15:19 申公 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 类与类加载器 虚拟机设计团队把类加载阶段张的"通过一个类的全限定名来获取此类的二进制字节流"这个动作放到Java虚拟机外部去实现,以便让应用程序自己决定如何去获取所需要的类。实现这个动作的代码模块称为"类加载器"。类加载器虽然只用于实现类的加载动作,但它在Java程序中起到的作用却远远不限定于类加载 阅读全文
posted @ 2018-01-30 15:19 申公 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 前言 定位系统问题的时候,知识、经验是基础,数据是依据,工具是运用知识处理数据的手段。这里说的数据包括:运行日志、异常堆栈、GC日志、线程快照、堆转储快照等。经常使用适当的虚拟机监控和分析的工具可以加快分析数据、定位解决问题的速度。 jps:虚拟机进程状况工具 首先约定一下运行的代码都是以下这段 J 阅读全文
posted @ 2018-01-24 19:19 申公 阅读(237) 评论(0) 推荐(0) 编辑
摘要: 前言 JVM的自动内存管理要自动化的解决两个问题:对象分配内存以及回收分配给对象的内存。对象的内存分配一般是指在堆上分配,少数情况下也可能会直接分配在老年代上,对象主要分配在新生代的Eden 区上,如果启动了本地线程分配缓存,将按线程优先在TLAB (本地线程分配缓存)上分配。分配的规则并不是百分之 阅读全文
posted @ 2018-01-24 14:34 申公 阅读(809) 评论(0) 推荐(0) 编辑
摘要: 部分商用虚拟机中,Java程序最初是通过解释器对.class文件进行解释执行的,当虚拟机发现某个方法或代码块运行地特别频繁的时候,就会把这些代码认定为热点代码Hot Spot Code(这也是我们使用的虚拟机HotSpot名称的由来)。为了提高热点代码的执行效率,在运行时,虚拟机将会把这些代码编译成 阅读全文
posted @ 2018-01-23 17:19 申公 阅读(575) 评论(0) 推荐(0) 编辑
摘要: 1.TO_MULTI_BYTE语法: TO_MULTI_BYTE(String) 功能: 计算所有单字节字符都替换为等价的多字节字符的String.该函数只有当数据库字符集同时包含多字节和单字节的字符的时候有效.否则, String不会进行任何处理. TO_MULTI_BYTE和TO_SINGLE_ 阅读全文
posted @ 2018-01-18 10:38 申公 阅读(323) 评论(0) 推荐(0) 编辑
摘要: 1.前言 垃圾收集器是前一章垃圾收集算法理论知识的具体实现了,不同虚拟机所提供的垃圾收集器可能会有很大差别,另外我们必须提前说明一个道理:没有最好的垃圾收集器,更加没有万能的收集器,只能选择对具体应用最合适的收集器。这也是HotSpot为什么要实现这么多收集器的原因,下面我们以HotSpot为例讲解 阅读全文
posted @ 2017-11-09 20:30 申公 阅读(6184) 评论(0) 推荐(2) 编辑
摘要: 1.垃圾对象的判断 Java堆中存放着几乎所有的对象实例,垃圾收集器对堆中的对象进行回收前,要先确定这些对象是否还有用,判定对象是否为垃圾对象有如下算法: (1):引用计数算法 给对象添加一个引用计数器,每当有一个地方引用它时,计数器值就加1,当引用失效时,计数器值就减1,任何时刻计数器都为0的对象 阅读全文
posted @ 2017-11-03 10:18 申公 阅读(517) 评论(0) 推荐(0) 编辑
摘要: 1.并发编程下 这两个名词都是并发编程中的概念,在并发编程的模型下的定义: 并发:是在同一个cpu上同时(不是真正的同时,而是看来是同时,因为cpu要在多个程序间切换)运行多个程序。 并行:是多个或同时一个cpu上,每个cpu运行一个程序。 打个比方,并发,就像一个人(cpu)喂2个孩子(程序),轮 阅读全文
posted @ 2017-11-02 13:58 申公 阅读(2391) 评论(2) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 9 下一页