2014年2月25日

摘要: Java里面真正意义的锁并不多,其实真正的实现Lock接口的类就三个,ReentrantLock和ReentrantReadWriteLock的两个内部类(ReentrantReadWriteLock实现了ReadWriteLock接口,并没有实现Lock接口,是其内部类ReadLock和WriteLock实现了Lock的接口),其他都是通过我们前面说的一些工具类实现了线程的阻塞。前面锁机制中提到的ReentrantLock 实现了标准的互斥操作,也就是一次只能有一个线程持有锁,也即所谓独占锁的概念。我们也一直在强调这个特点。显然这个特点在一定程度上面减低了吞吐量,实际上独占锁是一种保守的锁策 阅读全文
posted @ 2014-02-25 22:36 迷途@书童 阅读(1681) 评论(0) 推荐(0)
摘要: 看了下java中高性能锁Lock,其中有如下:ReentrantLock:独占锁,类似于synchronized,不过锁的粒度更小ReadWriteLock(ReentrantReadWriteLock):读写锁,实现读写的互斥运行,锁的粒度更小,实现读写锁更方便看了下其代码,背后应该是用LockSupport来支撑实现的,大致原理如下:当获取读锁时,当前线程 阅读全文
posted @ 2014-02-25 22:35 迷途@书童 阅读(190) 评论(0) 推荐(0)

导航