A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© jlq 中级黑马   /  2015-11-5 23:22  /  225 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

java.util.concurrent.locks
1、Lock实现提供了比使用同步函数和同步代码块可获得的更广泛的锁定操作。此实现允许更灵活的结构,可以具有差别很大的属性,可以支持多个相关的condition对象。
----lock在替代同步函数。。的操作----
2、方法:
lock()获取锁;unlock()释放锁。

3、wait();notify()等方法都应该定义在同步块中,每一个wait(),notify(),,都要标示自己所使用的锁;
现在同步变成了lock,wait()/notify()变成 了condition
示例:



4、condition将Object监视器方法(wait,notify,notifyAll)分解成截然不同的对象,以便通过将这些对象与任意Lock实现组合使用,为每个对象提供多哥等待set(wait-set)。其中,Lock替代了synchronized方法和语句的使用,Condition替代了Object监视器方法的使用。

注意:JDK1.5提供了多线程升级解决方案;将同步替换成显式的Lock操作,将Object中的wait(),notify(),notifyAll(),替换成了condition对象,该对象可以通过Lock锁进行获取。
该示例中,实现了只唤醒对方的操作。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马