会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
辽河老男孩
新随笔
联系
订阅
管理
2022年1月2日
【多线程与高并发】7-JMH&Disruptor
摘要: JMH Java准测试工具套件 什么是JMH 官网 http://openjdk.java.net/projects/code-tools/jmh/ 创建JMH测试 创建Maven项目,添加依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmln
阅读全文
posted @ 2022-01-02 14:46 辽河老男孩
阅读(103)
评论(0)
推荐(0)
2021年12月31日
【多线程与高并发】6-线程池
摘要: Executor public class T01_MyExecutor implements Executor{ public static void main(String[] args) { new T01_MyExecutor().execute(()->System.out.println
阅读全文
posted @ 2021-12-31 00:37 辽河老男孩
阅读(39)
评论(0)
推荐(0)
2021年12月28日
【多线程与高并发】5-容器
摘要: Vector和HashTable 自带锁,现基本不用 HashMap ConcurrentHashMap 内部用了CAS,高并发,查询效率高 ConcurrentSkipListMap 高并发并且有序(代替TreeMap,因为TreeMap用了红黑树,较为复杂,因此没有ConcurrentTreeM
阅读全文
posted @ 2021-12-28 23:29 辽河老男孩
阅读(66)
评论(0)
推荐(0)
【多线程与高并发】4-AQS&强软弱虚
摘要: AQS(CLH) 底层:CAS+volatile 图解 aqs核心上是一个state(volatile),以及监控这个state的一个双向链表,每个链表有一个节点,每个节点装的是线程,那么每个线程要获得锁,要等待,都要进入到这个等待队列中。 (在添加队列尾要关注前置节点,进行CAS防止线程打断,自旋
阅读全文
posted @ 2021-12-28 22:41 辽河老男孩
阅读(34)
评论(0)
推荐(0)
2021年12月21日
【多线程与高并发】3-JUC同步锁
摘要: 锁的分类: 乐观锁(CAS),悲观锁(synchronized),自旋锁(CAS),读写锁(共享锁、排他锁),分段锁(LongAdder,ConcurrentHashMap) ReentrantLock 可重入锁 reentrantlock用于替代synchronized,底层CAS wait/no
阅读全文
posted @ 2021-12-21 23:32 辽河老男孩
阅读(71)
评论(0)
推荐(0)
2021年12月19日
【多线程与高并发】2-volatile
摘要: volatile 作用: 保证线程可见性(MESI缓存一致性协议) M: 被修改(Modified) E: 独享的(Exclusive) S: 共享的(Shared) I: 无效的(Invalid) 禁止指令重排序-CPU DCL单例 Double Check Lock(双重检查) 原语指令 (读写
阅读全文
posted @ 2021-12-19 21:41 辽河老男孩
阅读(33)
评论(0)
推荐(0)
【多线程与高并发】1-线程与锁
摘要: 线程概念 通俗来说,就是一个程序内不同的执行路径 线程生命周期 synchronized锁升级概念 sync(Object) 0.首先无锁状态(markword)00 1.记录markword(线程ID) 偏向锁 01 2.如果有线程争用,锁升级 自旋锁(轻量级锁-用户态,未经内核) 10 3.自旋
阅读全文
posted @ 2021-12-19 21:33 辽河老男孩
阅读(39)
评论(0)
推荐(0)
公告