Java 中的 Condition

1、Condition 实际上是 java.util.concurrent.locks 中的一个接口。

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

3、Condition 实例实质上被绑定到一个锁上。要为特定 Lock 实例获得 Condition 实例,需要使用 Lock 的 newCondition() 方法。

final Lock lock = new ReentrantLock();
   final Condition notFull  = lock.newCondition(); 
   final Condition notEmpty = lock.newCondition();

猜你喜欢

转载自blog.csdn.net/weixin_41163113/article/details/85934563