代老师的博客 https://github.com/daichangya
daicy daicy 发布于 2020-12-31

Java锁总结

前言Java提供了种类丰富的锁,每种锁因其特性的不同,在适当的场景下能够展现出非常高的效率。本文旨在对锁相关源码(本文中的源码来自JDK8和Netty3.10.6)、使用场景进行举例,为读者介绍主流锁的知识点,以及不同的锁的适用场景。Java中往往是按照是否含有某一特性来定义锁,我们通过特性将锁进行

daicy daicy 发布于 2020-12-29

Java并发之synchronized关键字深度解析

前言  本文继续【Java并发之synchronized关键字深度解析(一)】一文而来,着重介绍synchronized几种锁的特性。一、对象头结构及锁状态标识  synchronized关键字是如何实现的给对象加锁?首先我们要了解一下java中对象的组成。java中的对象由3部分组成,第一部分是对

daicy daicy 发布于 2020-12-29
jvm

java object多大 java对象内存模型 数组有多长

对象结构在HotSpot虚拟机中,对象在内存中存储的布局可以分为3块区域:对象头(Header)、实例数据(InstanceData)和对齐填充(Padding)。下图是普通对象实例与数组对象实例的数据结构:1对象头HotSpot虚拟机的对象头包括两部分信息:markword 第一部分markwor

daicy daicy 发布于 2020-12-28
daicy daicy 发布于 2020-12-28
daicy daicy 发布于 2020-12-22

线程池EventLoopGroup源码分析

(0)Reactor模型Reactor模型是一种经典的线程模型,一般分为三种类型:Reactor单线程模型Reactor多线程模型Reactor主从多线程模型Reactor单线程模型Reactor单线程模型是指所有的IO操作包括acceptor操作和handler操作都由一个线程完成;Netty中R

daicy daicy 发布于 2020-12-18

Recycler对象池分析

publicclassRecyclerTest{staticclassWrapRecycler{privatebooleantmp;privatefinalstaticRecycler<WrapRecycler>RECYCLER=newRecycler<WrapRecycler&g

daicy daicy 发布于 2020-12-18

数据管道ChannelPipeline源码分析

(0) ChannelPipeline的实例 ChannelPipeline的使用实例 private void connect(String host,int port){ EventLoopGroup group = new NioEventLoopGroup(); try {

daicy daicy 发布于 2020-12-18