- 博客(7)
- 收藏
- 关注
原创 SpringBoot学习(一)
初探原理 Pom.xml 分析思路:只要是Maven项目都先分析 pom.xml 1、发现一个父依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId...
2020-03-18 19:11:14 86
原创 深入学习JVM(下)
GC详解 GC 的作用域 关于垃圾回收:分代收集算法不同的区域使用不同的算法 Young代: GC频繁区域 Old代:GC次数较少 Perm代:不会产生GC 一个对象的历程! JVM在进行GC时,并非每次都是对三个区域进行扫描的!大部分的时候都是指的新生代! GC两个类型: 普通GC:只针对新生代 【GC】 全局GC:主要是针对老年代,偶尔伴随新生代! 【Full GC】 GC四...
2020-03-16 20:29:05 116
原创 深入学习JVM(中)
JVM的位置 JVM的体系架构图 类加载器ClassLoader 类的加载、链接和初始化(了解) 加载:查找并加载类的二进制数据 连接: 验证:保证被加载的类的正确性; 准备:给类静态变量分配内存空间,赋值一个默认的初始值;- 解析:把类中的符号引用转换为直接引用 在把java编译为class文件的时候,虚拟机并不知道所引用的地址;助记符:符号引用! 转为真正的直接引用,找到对应的直接...
2020-03-13 21:14:13 113 1
原创 深入学习JVM(上)
JMM Java Memory Model Java内存模型;就是一个理论! 线程安全相关~! 所有的线程是如何工作 内存交互操作有8种,虚拟机实现必须保证每一个操作都是原子的,不可在分的(对于double和long类型的变量来说,load、store、read和write操作在某些平台上允许例外) lock (锁定):作用于主内存的变量,把一个变量标识为线程独占状态 un...
2020-03-11 21:09:54 102
原创 JUC并发编程(下)
常用辅助类 1、CountDownLatch package com.coding.fuzhu; import java.util.concurrent.CountDownLatch; /** * CountDownLatch 减法计数器 * 倒计时:10 -> 0 执行 */ public class CountDownLatchDemo { public static ...
2020-03-11 19:50:25 103
原创 JUC并发编程(中)
读写锁 读占锁(写锁) : 一次只能被一个线程占有 共享锁(读锁): 该锁可以被多个线程占有 读写锁如果不写锁,会造成 package com.coding.rwlock; import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer; import java.util.HashMap; import java.util.Ha...
2020-03-07 19:24:04 138
原创 JUC并发编程(上)
JUC 是Java原生的并发包,和一些常用的工具类 线程与进程 一个进程可以包含多个线程,一个进程至少有一个线程。 并发与并行 并发:多个线程操作同一个资源,交替执行的过程。 并行:多个线程同时执行,只有在多核Cpu下才能完成! 线程有6种状态 1、NEW 新建 2、RUNABLE 运行 3、BLOCKED 阻塞 4、WAITING 等待 5、 TIMED_WAITING 延时等待 ...
2020-03-03 14:27:23 183
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人