黑马程序员技术交流社区
标题:
关于多线程线程间通信升级后的问题
[打印本页]
作者:
唐巍
时间:
2012-3-15 16:34
标题:
关于多线程线程间通信升级后的问题
在JDK1.5版本之后,wait(),notify(),notifyAll()被替换为Condition对象,该对象可由Lock锁进行获取。这种升级有什么好处?
作者:
张润政
时间:
2012-3-15 17:36
Condition 将 Object 监视器方法(wait、notify 和 notifyAll)分解成截然不同的对象,以便通过将这些对象与任意 Lock 实现组合使用,为每个对象提供多个等待 set(wait-set)。其中,Lock 替代了 synchronized 方法和语句的使用,Condition 替代了 Object 监视器方法的使用。
它分解成了不同的对象,那么就是说。我现在可以利用condition来明确的给这些线程分帮结派了,当正在设置资源的线程在同步操作的时候,它就拿到了唯一的一个lock,等它设置完资源了,它就调用singnal方法只唤醒对方的线程。不用再唤醒所有的线程了。这样就提高了代码的效率。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2