并发编程 Condition
本文将介绍 JUC 中的 Condition。
一、什么是 Condition ?
Condition 是并发编程中的一个接口,实现了管程中的条件。
二、特点
1. Condition 的特点
在 synchronized 中,一个锁只会有一个等待队列。
在 JUC 中,利用 Condition,可以在一个锁中同时拥有多个条件,且每个条件分别对应有一个等待队列,它们可以独立地被放入线程、唤醒线程。
2. await()、signal()、signalAll()
await()、signal()、signalAll() 的语义和 wait()、notify()、notifyAll() 相同。
3. 示例
1 |
|
参考
- Java 并发编程实战