| 接口 | 描述 |
|---|---|
| Condition | |
| Lock |
Lock实现提供比使用
synchronized方法和语句可以获得的更广泛的锁定操作。
|
| ReadWriteLock |
A ReadWriteLock维护一对关联的locks ,一个用于只读操作,一个用于写入。
|
| 类 | 描述 |
|---|---|
| AbstractOwnableSynchronizer |
可以由线程专有的同步器。
|
| AbstractQueuedLongSynchronizer |
AbstractQueuedSynchronizer的一个版本,其中同步状态保持为long 。
|
| AbstractQueuedSynchronizer |
提供一个框架,用于实现依赖先进先出(FIFO)等待队列的阻塞锁和相关同步器(信号量,事件等)。
|
| LockSupport |
用于创建锁和其他同步类的基本线程阻塞原语。
|
| ReentrantLock |
一个可重入互斥 Lock具有相同的基本行为和语义的隐式监视器锁定使用访问synchronized方法和语句,但功能更强大。
|
| ReentrantReadWriteLock |
ReadWriteLock的实现支持类似的语义到ReentrantLock 。
|
| ReentrantReadWriteLock.ReadLock |
该锁由方法
ReentrantReadWriteLock.readLock()返回。
|
| ReentrantReadWriteLock.WriteLock | |
| StampedLock |
一种基于能力的锁,具有三种模式用于控制读/写访问。
|
Lock接口支持语义(可重入,公平等)不同的锁定规则,可用于非块结构上下文中,包括手持和重新排序算法。 主要实现为ReentrantLock 。
ReadWriteLock接口类似地定义了可能在读取器之间共享的锁,但是对作者是排他性的。 只提供一个实现, ReentrantReadWriteLock ,因为它涵盖了大多数标准使用上下文。 但程序员可能会创建自己的实现来覆盖非标准要求。
该Condition接口描述了可能会与锁有关条件变量。 这些使用方式与使用Object.wait访问的隐式监视器Object.wait ,但提供扩展功能。 特别地,多个Condition对象可以与单个Lock 。 为避免兼容性问题, Condition方法的名称与相应的Object版本不同。
AbstractQueuedSynchronizer类作为一个有用的超类,用于定义依赖排队阻塞线程的锁和其他同步器。 AbstractQueuedLongSynchronizer类提供相同的功能,但扩展了对64位同步状态的支持。 两者都扩展类AbstractOwnableSynchronizer ,一个简单的类,有助于记录当前持有排他同步的线程。 LockSupport类提供了较低级别的阻塞和解除阻塞支持,对于实现自己的自定义锁类的开发人员来说,这是非常有用的。
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.