240 发简信
IP属地:安徽
  • 【jvm学习笔记九】java的clone方法实现

    这篇我们学习下jvm的clone实现,具体实现在jvm.cpp中: clone方法主要是复制对象,当然只是浅拷贝。里面一些方法等处理不清楚原因,...

  • 【jvm学习笔记八】G1-线程中的安全点

    在垃圾回收中,经常会STW,为了首先STW,jvm设计了安全点(safepoint)。那么什么是安全点?线程什么时候进入和离开安全点呢? 安全点...

  • 【jvm学习笔记七】G1-字符串去重

    字符串去重是G1引入的新特性,在我们日常开发中,字符串基本上是使用最多的类型。而String对象是不可变的,通常会消耗大量的内存,这里面有一部分...

  • 【jvm学习笔记六】G1-混合GC分析

    混合GC(Mixed GC):既收集年轻代,也收集老年代。不同于YGC,涉及老年代回收时,引入了并发标记。并发标记指的是GC线程可以和Mutat...

  • Resize,w 360,h 240
    【jvm学习笔记五】G1-YGC分析

    在内存分配的时候,如果剩余空间不能满足分配的对象就会触发YGC。G1每次都会收集所有的新生代的分区,但新生代分区的数目每次可能是不一样的,这是因...

  • Resize,w 360,h 240
    【jvm学习笔记四】G1-RSet和卡表

    RSet和卡表 试想一下,当在ygc时,我们需要扫描整个新生代。当新生代的对象被老年代引用,则此对象就不能回收。那么怎么判断这点呢,总不能扫描老...

  • 【jvm学习笔记二】Java对象的创建过程

    上文分析了Java类的加载过程,那么Java对象的创建过程是什么样呢? 以上为例,看下new关键字在底层是怎么实现的。new关键字实现在Inte...

  • 【jvm学习笔记一】Java类的加载过程

    环境 本系列学习笔记基于openjdk-8u60版本 OOP-Klass二分模型 Hotspot基于C++实现,而C++本身也是一门面向对象的语...

  • protobuf相关优化杂谈

    这段时间在公司搞序列化相关的优化,这里做下笔记吧。 项目背景 项目采用dubbo(版本不自带protostuff序列化),接口参数为byte[]...