- 博客(5)
- 收藏
- 关注
一文读懂阻塞、非阻塞、同步、异步IO
介绍 在谈及网络IO的时候总避不开阻塞、非阻塞、同步、异步、IO多路复用、select、poll、epoll等这几个词语。在面试的时候也会被经常问到这几个的区别。本文就来讲一下这几个词语的含义、区别以及使用方式。Unix网络编程一书中作者给出了五种IO模型:1、BlockingIO - 阻塞IO2、NoneBlockingIO - 非阻塞IO3、IO multiplexing - I...
2018-05-13 10:08:40
167
原创 G1 GC技术解析
介绍 G1 GC,全称Garbage-First Garbage Collector,通过-XX:+UseG1GC参数来启用。G1收集器是工作在堆内不同分区上的收集器,分区既可以是年轻代也可以是老年代,同一个代的分区不需要连续。并且每个代分区的数量是可以动态调整的。为老年代设置分区的目的是老年代里有的分区垃圾多,有的分区垃圾少,这样在回收的时候可以专注于收集垃圾多的分区,这也是G1名称...
2018-05-03 20:11:01
990
原创 CMS垃圾收集器
介绍 CMS垃圾回收器的全称是Concurrent Mark-Sweep Collector,从名字上可以看出两点,一个是使用的是并发收集,第二个是使用的收集算法是Mark-Sweep。从而也可以推测出该收集器的特点是低延迟并且会有浮动垃圾的问题。下面详细介绍一下这个收集器的特点。CMS收集器 CMS收集器是为了低延迟而生,通过尽可能的并行执行垃圾回收的几个阶段来把延迟...
2018-05-01 17:37:34
780
1
原创 Throughtput收集器
介绍 JVM里面的Throughtput收集器是一款关注吞吐量的垃圾收集器。该收集器是唯一一个实现了UseAdaptiveSizePolicy策略的收集器,允许用户通过指定最大暂停时间和垃圾收集时间占总时间的百分比,然后自适应调整JVM的参数来达到配置的目标。Throughtput收集器 先上一张经典的垃圾收集器的图: 这张图相信很多人都看过,展示了各个垃圾收集器...
2018-04-29 18:09:16
173
原创 深入理解DirectByteBuffer
介绍 最近在工作中使用到了DirectBuffer来进行临时数据的存放,由于使用的是堆外内存,省去了数据到内核的拷贝,因此效率比用ByteBuffer要高不少。之前看过许多介绍DirectBuffer的文章,在这里从源码的角度上来看一下DirectBuffer的原理。用户态和内核态 Intel的 X86架构下,为了实现外部应用程序与操作系统运行时的隔离,分为了Ring0...
2018-04-22 19:30:35
243
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人