Java多线程基础:ReentrantReadWriteLock

时间:2013-08-24 栏目:java技术 阅读:0 作者:宏鹏教育武汉宏鹏鲁广校区

  武汉宏鹏教育武汉宏鹏光谷校区知识分享:关于Java多线程基础总结第八项,什么是ReentrantReadWriteLock?

  说到ReentrantReadWriteLock,先要做的是与ReentrantLock划清界限。它和后者都是单独的实现,彼此之间没有继承或实现的关系。 然后就是总结这个锁机制的特性了:

  (a).重入方面其内部的WriteLock可以获取ReadLock,但是反过来ReadLock想要获得WriteLock则永远都不要想。

  (b).WriteLock可以降级为ReadLock,顺序是:先获得WriteLock再获得ReadLock,然后释放WriteLock, 这时候线程将保持Readlock的持 有。反过来ReadLock想要升级为WriteLock则不可能,为什么?参看(a),呵呵.

  (c).ReadLock可以被多个线程持有并且在作用时排斥任何的WriteLock,而WriteLock则是完的互斥。这一特性为重要,因为对于高 读取频率而相对较低写入的数据结构,使用此类锁同步机制则可以提高并发量。

  (d).不管是ReadLock还是WriteLock都支持Interrupt,语义与ReentrantLock一致。

  为了确保你的完掌握,请直接点击在线咨询老师,为你分析!

专业老师指导

赵老师

赵老师

从事IT教育培训十年有余,致力于帮助广大学子找到适合自己的专业

立即在线咨询

培训咨询客服

陈老师

陈老师

IT培训专业客服,用自己的真诚解决了无数学子的困惑

立即在线咨询

热门课程任你选,成长蜕变看的见

课程余量有限,即将截止报名!查看详情