读写分离写操作在一个复制的数组上进行,读操作还是在原始数组中进行,读写分离,互不影响。写操作需要加锁,防止并发写入时导致写入数据丢失。写操作结束之后需要把原始数组指向新的复制数组。// 测试代码 package javaCollection;import java.util.concurrent.CopyOnWriteArrayList;public class AnalyseCopyOnWri
转载 2021-04-18 20:06:06
208阅读
2评论
容器源码分析 - List以下源码分析基于 JDK 1.8。ArrayList1. 概览实现了 RandomAccess 接口,因此支持随机访问。这是理所当然的,因为 ArrayList 是基于数组实现的。public class ArrayList<E> extends AbstractList<E> implements List<E>, R
在并发编程中,有时候需要使用线程安全的队列。如果要实现一个线程安全的队列有两 种方式:一种是使用阻塞算法,另一种是使用非阻塞算法。使用阻塞算法的队列可以用一
原创 2022-11-04 13:39:28
168阅读
  最近想拿出一部分时间来学习一下spring的源码,还特意买了一本书结合来看,当然主要是学习并跟着作者的思路来踏上学习spring的源码的道路,特意在此记录一下,《spring源码深度解析》一、spring的结构组成  从简单的例子入手,从实际的开发中去解析、学习源码,结合工作中的内容,这样才能更好的、更加深入的学习,go go go!!!1、容器的基本用法与功能分析容器基本用法,代码如下:1
前言HashMap是一个散列表,它存储的内容...
转载 2020-06-25 19:35:00
104阅读
2评论
本章介绍的是ArrayList,主要学习方式是解读源码,将底层实现暴露给阅读者,这样学习更简单明了。简介:ArrayList ArrayList是一个数组队列,相当于动态数组。 与java数组相比,他的优点在于容量能动态增长。特征public class ArrayList<E> xtends AbstractList<E>...
原创 2023-03-31 16:46:48
113阅读
链接:https://www.ycbbs.vip/?cat=30 ...
转载 2021-10-08 09:15:00
110阅读
2评论
本章介绍的是Vector,主要学习方式是解读源码,将底层实现暴露给阅读者,这样学习更简单
原创 2023-02-16 19:23:06
43阅读
。实现继承Collection:public i...
原创 2023-02-20 00:36:34
51阅读
JDK源码容器 – Collection下面介绍的是Collection,主要是源码解读,搂一搂源码,很多时候就很清晰了Collection集合:Collection是一个接口,它主要的分支是:Queue,List 和 Set。Queue,List和Set都是接口,它们继承于Collection。List是有序的队列,List中可以有重复的元素;Set是数学概念中的集合,Set中没有重复元素
原创 2023-02-20 00:36:41
40阅读
原创 2023-02-20 00:36:50
67阅读
JDK源码容器 – LinkedList本章介绍的是LinkedList ,主要学习方式是解读源码,将底层实现暴露给阅读者,这样学习更简单明了。简介:LinkedList   LinkedList 是一个继承于AbstractSequentialList的双向链表。它也可以被当作堆栈、队列或双端队列进行操作。 默认构造函数LinkedList() &n
原创 2023-02-20 00:40:05
73阅读
【Spring源码】Spring IOC 容器源码分析(三)
转载 2021-07-09 11:03:06
400阅读
前段时间一直忙些其他事情,docker源码分析的事情耽搁了,今天接着写,上一章了解了docker client 和 docker daemon(会启动一个http server)是C/S的结构,client端发出的命令由docker daemon接收并处理。我们在运行docker的时候,可能会使用到docker run命令(当然通过Dockerfile运行docker build命令也是一样的)时
接上一篇【Spring源码】Spring IOC 容器源码分析(一)Bean 容器实例化完成后说到这里,我们回到 refresh() 方法,我重新贴了一遍代码,看看我们说...
原创 2021-07-15 13:49:55
199阅读
1 概述1.1 依赖反转模式  在Java中,一个复杂的功能一般都需要由两个或者两个以上的类通过彼此合作来实现业务逻辑的,这使得每个对象都需要与其合作的对象的引用。如果这个获取依赖对象的过程需要自己去实现,那么这将导致代码的高度偶尔并且难以测试。  依赖反转就是对象依赖关系的管理被反转了(获取依赖对象的方式进行了反转),以前是自己主动获取依赖对象,现在是通过框架或者IOC容器将依赖对象注入进来(也
说到这里,我们回到 refresh() 方法,我重新贴了一遍代码,看看我们说到哪了。是的,我们才说完 obtainFreshBeanFactory() 方法。
转载 2021-07-09 13:08:36
259阅读
【Spring源码】Spring IOC 容器源码分析
转载 2021-07-09 13:11:08
289阅读
接上一篇【Spring源码】Spring IOC 容器源码分析(二)附录id 和 name每个 Bean 在 Spring 容器中都有一个唯一的名字(beanName)和...
原创 2021-07-15 13:50:23
171阅读
本文较长,由于微信文章文字限制,IOC源码分析分为3个文章展示出来~Spring 最重要的概念是 IOC 和 AOP,本篇文章其实就是要带领大家来分析下 Spring 的...
原创 2021-07-15 13:50:49
266阅读
  • 1
  • 2
  • 3
  • 4
  • 5