锁
大雄小方
想回到过去,试着让故事继续...
展开
-
各种锁学习总结
各种锁学习总结原创 2019-04-30 22:28:45 · 183 阅读 · 0 评论 -
AQS与ReentrantLock学习总结
AQS与ReentrantLock学习总结lock与synchronize区别?什么是AQS?队列同步器,维护一个双向链表队列和一个同步状态stateReentrantLock的独占锁和分享锁独占锁的实现:判断当前线程的前一个线程是否头节点(是否获取锁),是的话就自旋尝试获取锁,不是的话就会判断SINGAL,判断是否为等待唤醒状态,是的话就不阻塞,不是的话就阻塞。学习文章:http:/...原创 2019-04-30 22:37:08 · 269 阅读 · 0 评论 -
对象锁和类锁问题实验
对象锁和类锁问题实验今天遇到了一个问题,就是当获取到类锁时还能获取到该类的对象锁吗?实验一都是获取类锁,显然会实现同步public class Solution { /*实验结果 获得类锁,睡觉zzz 起床... 获得对象锁 */ public static void main(String[] args) { Solution s = new Solution(); ...原创 2019-05-24 22:50:56 · 119 阅读 · 0 评论 -
Java线程同步-生产者消费者
Java线程间通信实践-生产者消费者设计一个容器,生成者往里面加物品,消费者往里面拿物品。很显然,这个容器需要一个同步机制,可以使用synchronized或者lock这里我在生产者put的时候判断容器是否满了,而在消费这get时判断容器是否为空。注意:这里使用wait时要注意要和while配合使用,防止并发情况下出现错误使用notifyAll而不是使用notify,防止同类唤醒一个同...原创 2019-06-06 17:42:01 · 191 阅读 · 0 评论