待兔 待兔
4年前
ThreadLocal源码分析
最近在学多线程并发的知识,发现好像ThreadLoca还挺重要,决定看看源码以及查找各方资料来学习一下。ThreadLocal能够提供线程的局部变量,让每个线程都可以通过set/get来对这个局部变量进行操作,不会和其它线程的局部变量进行冲突,实现了线程的数据隔离。首先是ThreadLocal的结构:每个Thread维护一个ThreadLocalMap,这个
Easter79 Easter79
4年前
spring源码分析
   在spring源码中,在很多地方都会出现PropertyEditor,那么属性编辑器用来干什么的呢?属性编辑器主要应用在以下两个方面:使用PropertyEditors设置Bean属性。当你在XML文件中声明的bean的属性类型为java.lang.String时,Spring将在容器初始化该bean时使用ClassEditor将Str
Easter79 Easter79
4年前
springboot源码分析
!(https://gss1.bdstatic.com/vo3dSag_xI4khGkpoWK1HF6hhy/baike/w%3D268%3Bg%3D0/sign0c730b84bd19ebc4c078719fba1da8c1/37d12f2eb9389b503a80d4b38b35e5dde6116ed7.jpg)
Stella981 Stella981
4年前
Netty 启动过程源码分析 (本文超长慎读)(基于4.1.23)
前言作为一个Java程序员,必须知道Java社区最强网络框架Netty,且必须看过源码,才能说是了解这个框架,否则都是无稽之谈。今天楼主不会讲什么理论和概念,而是使用debug的方式,走一遍Netty(服务器)的启动过程。1\.demo源码楼主clone的netty的源码,值得一提
Easter79 Easter79
4年前
TiDB 源码阅读系列文章(二)初识 TiDB 源码
本文为TiDB源码阅读系列文章的第二篇,第一篇文章介绍了TiDB整体的架构,知道TiDB有哪些模块,分别是做什么的,从哪里入手比较好,哪些可以忽略,哪些需要仔细阅读。这篇文章是一篇入门文档,难度系数比较低,其中部分内容可能大家在其他渠道已经看过,不过为了内容完整性,我们还是会放在这里。TiDB架构!(http:/
Stella981 Stella981
4年前
Git7:使用Gitlab管理远程仓库
\toc\1、安装gitlab的源码安装极其复杂,如果要尝试源码安装可以参考如下文档:https://github.com/gitlabhq/gitlabhq/blob/master/doc/install/installation.md(https://www.oschina.net/action/GoToLink?urlht
Wesley13 Wesley13
4年前
Go日志,打印源码文件名和行号造成的性能开销
日志中打印源码文件名和行号,是非常实用的功能,尤其是开发阶段的debug日志,可以快速通过日志找到对应的源码位置。Go标准库中的packagelog也支持打印源码文件名和行号,打开方式是设置以下两个标志中的任意一个:Llongfile//fullfilenameandlinenumber:/a/b/c/d.go:2
spring源码阅读之bean加载过程(一)
如果想要阅读源码,首先要选择版本,然后将源代码下载到本地,导入idea中,话不多说,直接看步骤吧这里我选择5版本,下载源码默认是main分支,看想学习的分支,比如我切换到5版本,截图如下:2.安装gradle3.转换源码进idea下载完成后可以看到有个文档