xzzz2020
xzzz2020
全部文章
未归档
操作系统(11)
数据库(12)
深入理解JVM(20)
算法与数据结构(14)
网络原理(11)
面试题总结(36)
归档
标签
去牛客网
登录
/
注册
Xu大大
全部文章
/ 未归档
(共290篇)
【详解】多线程下的单例模式
这里写目录标题 多线程下单例模式的问题 解决一:二次检测解决 解决二:优雅的方式:Holder 解决三:优雅的方式:枚举类型 多线程下单例模式的问题 多线程情况懒加载的单例模式,会导致多个线程同时加载对象 此时可以采用二次检测的机制,实现对于性能以及安全的保...
2020-08-14
0
586
Java学习知识图谱
2020-08-14
0
389
【详解】Java多线程之内存模型三大特性
目录 一、数据不一致的问题 二、解决方法 三、JMM模型中的三个概念 原子性 可见性 有序性 四、Java中对三个特性的保证 保证原子性 保证可见性 保证有序性(happens-before relationship) ...
2020-08-14
1
580
【详解】Java多线程中的观察者模式
观察者模式介绍 定义一个观察者,观察一个主题subject /** * 一个观察者的抽象类 * 具体当状态发生变化进行的操作交给子类实现 */ public abstract class Observer { protected Subject subject; public...
2020-08-14
0
827
【详解】Java并发之单线程执行设计模式
问题引出 该问题出现分为三个角色 门:相当于共享资源 用户:相当于一个线程 客户端:负责启动多个线程通过这个门 资源在线程使用资源的时候,做了一个检查,检查此时使用资源的名字和地址是否相同 /** * 门,相当于共享资源 */ public class Gate { ...
2020-08-14
0
504
【详解】Java并发之读写锁分离设计模式
分析 读写锁最重要的需求是:多个线程如果都是在读取数据,如果依然采用加锁的方式,会严重影响效率。所以需要对读写锁进行分离 这种方式适用于:读取的操作比较多 需要考虑以下冲突,否则会出现数据不一致的情况 冲突 策略 读 — 读...
2020-08-14
0
620
【详解】Java多线程之不可变对象设计模式
分析 这是一种无锁的设计模式,因为不可变对象没有任何机会去修改这个对象的属性或者引用类型 需要有两个概念 不可变对象一定是线程安全的 可变对象不一定是不安全的 创建不可见对象的原则: 1)所有成员变量必须是private 2)最好同时用final修饰(非必须) 3)不提供...
2020-08-14
0
522
【详解】Java并发之Fature设计模式
分析 Future模式的核心在于:去除了主函数的等待时间,并使得原本需要等待的时间段可以用于处理其他业务逻辑。 Future模式有点类似于商品订单。在网上购物时,提交订单后,在收货的这段时间里无需一直在家里等候,可以先干别的事情。类推到程序设计中时,当提交请求时,期望得到答复时,如...
2020-08-14
0
733
【详解】Java并发之确保挂起设计模式
分析 在Tomcat中的例子 Request -> Tomcat httpServer -> doing ................. Request -> Tomcat httpServer -> Queue wait -> doing 需求 一...
2020-08-14
0
540
【详解】ThreadLocal(线程保险箱)
分析 threadlocal在线程间是隔离的,不共享,用于存储线程的变量 即使多个线程使用同一个ThreadLocal,也只能访问自己的属性 一个简单的例子 线程1和线程2分别从同一个ThreadLocal中存取变量 主线程没有存变量,也在获取 可以发现,每个线程获取的都是自己...
2020-08-14
0
548
首页
上一页
9
10
11
12
13
14
15
16
17
18
下一页
末页