摘要: 文章目录 单例模式 1、饿汉式 2、懒汉式 3、DCL懒汉式 通过反射破坏单实例 第1种 第2种 4、静态内部类 5、枚举 尝试反射获取枚举实例 第一种尝试 第二种尝试 总结 单例模式 单例模式,即单个实例,只有一个实例 1、饿汉式 饿汉模式,可以想象一个很饿的人,需要立马吃东西,饿汉模式便是这样, 阅读全文
posted @ 2020-06-14 17:17 张还行 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 文章目录 JMM(java memory model) Volatile 关键字 保证可见性 volatile++复合操作不保证原子性 单个volatile操作保证原子性 禁止指令重排 JMM(java memory model) 什么是JMM JMM:java内存模型(java memory mo 阅读全文
posted @ 2020-06-14 17:12 张还行 阅读(356) 评论(0) 推荐(0) 编辑
摘要: 文章目录 ForkJoinPool类 JDK 1.7 常用方法 ForkJoinTask\ 抽象类 RecursiveAction 抽象类 RecursiveTask\ 抽象类 LongStream 接口 案例 使用ForkJoin,并行Stream计算大数据的和 CompletableFuture 阅读全文
posted @ 2020-06-14 17:07 张还行 阅读(518) 评论(0) 推荐(0) 编辑
摘要: 文章目录 线程池 1、3大方法 2、7大参数 ThreadPoolExecutor 类 执行过程原理 3、4种拒绝 4、自定义线程池 CPU密集型 IO密集性 混合型 线程池最大线程数应该如何定义? 线程池 3大方法、7大参数、4种拒绝 自定义线程池 1、3大方法 不推荐使用该3大方法,请使用Thr 阅读全文
posted @ 2020-06-14 17:03 张还行 阅读(501) 评论(0) 推荐(0) 编辑
摘要: 文章目录 JUC常用工具(组件)类 JDK 1.5 1、CountDownLatch 构造方法 常用方法 2、CyclicBarrier 构造方法 常用方法 3、Semaphore 构造方法 常用方法 4、Exchanger - CountDownLatch 与 CyclicBarrier 的区别 阅读全文
posted @ 2020-06-14 16:53 张还行 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 文章目录 Lock 接口 (重点) 1、ReentrantLock 类 2、Lock与Synchronized的区别 面试 3、防止线程虚假唤醒 解决虚假唤醒分析 面试 4、Condition 接口 JDK 1.5 5、Condition实现精准通知唤醒 6、关于锁的问题 面试 解决集合类线程不安全 阅读全文
posted @ 2020-06-14 16:50 张还行 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 自定义同步组件 TwinsLock TwinsLock.java 自定义简单的同步组件,该工具至多只允许2个线程同时访问,超过2个线程的访问将被阻塞,加入到同步队列中,这个自定义规则的工具为TwinsLock。 由于允许2个线程同时获取同步锁,所以该同步组件是共享的。 通俗的说:AQS是写同步的规则 阅读全文
posted @ 2020-05-01 13:27 张还行 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 引用计数算法 假设有一个对象A,任何一个对象对A的引用,那么对象A的引用计数器+1,当引用消失时,对象A的引用计数器就-1,如果对象A的计数器的值为0,就说明对象A没有引用了,可以被回收。 优点: 实时性较高,无需等到内存不够的时候,才开始回收,运行时根据对象的计数器是否为0,就可以直接回收。在垃圾 阅读全文
posted @ 2020-03-12 12:16 张还行 阅读(260) 评论(0) 推荐(0) 编辑
摘要: MySQL 5.7 的版本,因为在user表中没有password字段,一直使用下边的方式来修改root密码 use mysql; ... 阅读全文
posted @ 2020-02-26 20:38 张还行 阅读(1094) 评论(0) 推荐(0) 编辑
摘要: ClassNotFoundException处理 使用IDEA搭建SpringMVC项目,配置好Tomcat直接运行时,报了一个错 ... 阅读全文
posted @ 2020-02-16 11:35 张还行 阅读(313) 评论(0) 推荐(0) 编辑