前言 本系列全部基于 Spring 5.2.2.BUILD-SNAPSHOT 版本。因为 Spring 整个体系太过于庞大,所以只会进行关键部分的源码解析。 本篇文章主要介绍 Spring IoC 容器是怎么加载 bean 的。 正文 我们先看一下Spring IoC BeanDefinition ...
分类:
编程语言 时间:
2020-06-26 14:27:21
阅读次数:
48
(一) 内部屏障范围 内存屏障分为4中,每种屏障的效果 Load : 从内存装载数据 Store: 将数据写入内存 (二) 内部屏障类型表 屏障类型 指令示例 说明 LoadLoad Barriers Load1;LoadLoad;Load2 确保Load1数据的装载先于Load2及 所有后续装载指 ...
分类:
其他好文 时间:
2020-06-25 23:20:33
阅读次数:
48
并发性是一系列性能技术,专注于减少等待 如果你的程序中的一个任务由于程序控制之外的某些条件(通常是I/O)而无法继续,我们会说任务或线程阻塞 进程和线程 线程的调度: 分时调用 所有线程轮流使用CPU的使用权,平均分配每个线程占用CPU的时间 抢占式调度 优先让优先级较高的线程使用CPU,如果线程的 ...
分类:
编程语言 时间:
2020-06-25 15:40:37
阅读次数:
69
面向对象编程的思想 做一件事情,找一个能解决这个事情的对象,调用对象的方法,完成事情 函数式编程思想 只要能获取到结果,谁去做的,怎么做的都不重要,重视的是结果,不重视过程 匿名内部类 匿名内部类的好处与弊端 一方面,匿名内部类可以帮我们省去实现类的定义;另一方面,匿名内部类的语法——确实太复杂了! ...
分类:
其他好文 时间:
2020-06-25 12:01:35
阅读次数:
73
G1之前收集器的特点 年轻代和老年代是各自独立且连续的内存块 年轻代收集器使用 eden + S0 + S1 进行复制算法 老年代收集必须扫描整个老年代区域 都是以尽可能的少而快速地执行 GC 为设计原则 G1 是什么 G1 是一种面向服务端的垃圾收集器,应用在多核处理器和大容量内存环境中,在实现高 ...
分类:
其他好文 时间:
2020-06-22 13:16:35
阅读次数:
60
导入pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instan ...
分类:
编程语言 时间:
2020-06-21 19:55:14
阅读次数:
51
组合模式 面对这样一种问题,可能List里面套List,是一种如下的树形数据结构 简单来说,叶子节点才是实际对象,其他都是一个集合 这时候就需要组合模式 组合模式将对象组合成树形结构以表示"部分-整体"的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。 想表示对象的部分-整体层次结构 ...
分类:
其他好文 时间:
2020-06-21 10:12:29
阅读次数:
75
Java集合类简介 java集合大致可以分为List、Set、Map、Queue四种体系,其中Set代表无序、不可重复的集合;List代表有序的、可重复的集合;Map代表具有映射关系的集合;Queue是一种队列集合。 Java集合和数组的区别 1.数组初始化的时候就指定了数组的长度,意味着只能保存定 ...
分类:
编程语言 时间:
2020-06-20 17:05:25
阅读次数:
60
UnityAudio系统 unity的音频系统需要三个最基本的组件 AudioClip: 音频片段 AudioSource: 音频播放器 AudioListener: 声音接收器 AudioClip: Force To Mono: 将多声道的声音合并成单声道,大幅降低文件 大小。合并声道之后,勾选N ...
分类:
编程语言 时间:
2020-06-18 14:37:14
阅读次数:
61
介绍 外观模式: 隐藏系统的细节,只向客户端提供一个可访问系统的接口. 属于结构型模式,通过向现有系统添加一个接口,来隐藏系统的复杂性. 目的: 定义一个高层接口,为子系统中的一组接口提供一个一致的界面,使得子系统更易被使用. 关键代码: 在客户端个复杂系统之间再加一层,这一层将调用顺序\依赖关系处 ...
分类:
编程语言 时间:
2020-06-17 11:12:35
阅读次数:
75