源码
源码相关
Gavin在路上
这个作者很懒,什么都没留下…
展开
-
ThreadLocal源码解析
下图是本文重点介绍的内存泄漏问题的源码:说之前先盗用一下别人的一张图片,对理解有很大的作用,图如下:1、如果虚拟机进行gc的时候,threadLocal对象是弱引用,会被回收。(key被回收了)(?这里留个问题,强引用是什么情况下去掉的)2、正常如果线程结束了,那么value也会被回收,此时正常,不会出现内存泄漏的问题。但是如果线程池,线程不回收呢,此时就出现内存泄漏了(此处准确的说法是线程不回收...原创 2018-05-07 15:43:01 · 138 阅读 · 0 评论 -
netty源码之服务端启动过程
一、创建eventLoopGroup(池化的reactor模型)主要是三部分1、创建任务执行器(创建线程用的)2、创建eventLoop3、初始化线程选择器二、服务器启动1、启动入口2、初始化和注册服务端channel3、启动eventLoop三、eventLoop的执行(开始执行select的nio逻辑)至此服务端启动完毕,...原创 2018-12-02 19:29:10 · 121 阅读 · 0 评论 -
thrift源码-client调用流程
ing原创 2018-12-03 15:58:14 · 394 阅读 · 0 评论 -
netty源码之新连接接入过程
todo原创 2018-12-17 07:37:58 · 289 阅读 · 0 评论 -
netty源码之端口绑定
1、绑定端口的入口2、在线程池中添加绑定端口的任务3、在pipeline中进行传播(这一点不是太明白,等介绍pipeline的时候再介绍吧)3、在NioServerSocketChannel中完成端口的绑定...原创 2019-01-29 15:45:01 · 789 阅读 · 1 评论 -
spring源码之MVC的ioc容器初始化
一、总体步骤1、定位找到配置文件2、加载解析配置文件3、注册bean注册到容器当中二、详细步骤1、入口DispatcherServlet对于web容器的规范,初始化servlet的时候会调用init()方法,所以会调用httpServletBean的init方法2、容器启动的入口,一键触发按钮refresh方法,具体调用的步骤不具体写出了...原创 2019-05-20 07:58:38 · 148 阅读 · 0 评论 -
springboot学习篇之启动过程
背景:约定大于配置、spi一、首先是找到主配置类启动二、扫描到自动装配注解三、划重点(import中selector的处理)三、到此已找到需要自动装配的配置类四、自动装配(RedisAutoConfiguration)配置完成,装入ioc容器...原创 2019-07-17 07:41:25 · 101 阅读 · 0 评论