- 博客(74)
- 收藏
- 关注
原创 JUC并发-共享模型-工具-J.U.C
Java8数组(Node)+(链表Node|红黑树TreeNode)以下数组简称(table),链表简称(bin)初始化,使用cas来保证并发安全,懒惰初始化table树化,当时,先尝试扩容超过64时,并且bin.length>8时,会将链表树化,树化过程会用synchronized锁住链表头put,如果该bin尚未创建,只需要使用cas创建bin;如果已经有了,锁住链表头进行后续put操作,元素添加至bin的尾部get无锁操作仅需要保证可见性,扩容过程中get操作拿到的是它会。
2024-05-09 10:46:31
1939
原创 JUC并发-共享模型-Monitor管程/监视器-悲观锁(阻塞)
obj.wait() 会释放对象的锁,让进入 object 监视器的线程到 waitSet 等待,从而让其他线程就机会获取对象的锁。无限制等待,直到 notify 为止。无参的wait,默认传入0,表示无限等待。wait(long n) 有时限的等待, 到 n 毫秒后结束等待,或是被 notify带参的wait,比如wait(1000),就是只等待1秒,如果等不到唤醒,就继续往下执行。obj.notify() 在 object 上正在 waitSet 等待的线程中挑一个唤醒。
2024-04-25 11:15:15
707
原创 设计模式04-行为型模式
行为型模式分为:模板方法模式、策略模式、命令模式、职责链模式、状态模式、观察者模式、中介者模式、迭代器模式、访问者模式、备忘录模式、解释器模式
2023-01-29 12:07:26
58
数据库MySQL基础知识点5
2022-12-30
数据库MySQL基础知识点3
2022-12-30
数据库MySQL基础知识点2
2022-12-09
数据库MySQL基础知识点1
2022-12-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人