|
Spec-Zone .ru
спецификации, руководства, описания, API
|
См.: Описание
| Интерфейс | Описание |
|---|---|
| Условие | |
| Блокировка |
Lock реализации обеспечивают более обширные операции блокировки, чем можно получить, используя synchronized методы и операторы. |
| ReadWriteLock |
ReadWriteLock поддерживает пару связанных
locks, один для операций только для чтения и один для того, чтобы записать. |
| Класс | Описание |
|---|---|
| AbstractOwnableSynchronizer |
Синхронизатор, который может исключительно принадлежать потоку.
|
| AbstractQueuedLongSynchronizer |
Версия
AbstractQueuedSynchronizer в котором состояние синхронизации сохраняется как long. |
| AbstractQueuedSynchronizer |
Служит основой для того, чтобы реализовать блокировки блокирования и связанные синхронизаторы (семафоры, события, и т.д.), которые полагаются первым прибыл - первым убыл (FIFO), ожидают очереди.
|
| LockSupport |
Основные примитивы блокирования потока для того, чтобы создать блокировки и другие классы синхронизации.
|
| ReentrantLock |
Повторно используемое взаимное исключение
Lock с тем же самым основным поведением и семантикой, поскольку неявная блокировка монитора получила доступ к использованию synchronized методы и операторы, но с расширенными возможностями. |
| ReentrantReadWriteLock |
Реализация
ReadWriteLock поддержка подобной семантики к ReentrantLock. |
| ReentrantReadWriteLock. ReadLock |
Блокировка возвратилась методом
ReentrantReadWriteLock.readLock(). |
| ReentrantReadWriteLock. WriteLock |
Блокировка возвратилась методом
ReentrantReadWriteLock.writeLock(). |
| StampedLock |
Основанная на возможности блокировка с тремя режимами для того, чтобы управлять доступом для чтения-записи.
|
Lock интерфейс поддерживает дисциплины блокировки, которые отличаются по семантике (повторно используемый, справедливый, и т.д.), и это может использоваться в неблочно-структурированных контекстах включая руку по руке и алгоритмы переупорядочения блокировки. Основная реализация ReentrantLock.
ReadWriteLock интерфейс так же определяет блокировки, которые могут быть совместно использованы среди читателей, но монопольные писателям. Только единственная реализация, ReentrantReadWriteLock, обеспечивается, так как это покрывает большинство стандартных контекстов использования. Но программисты могут создать свои собственные реализации, чтобы покрыть нестандартные требования.
Condition интерфейс описывает условные переменные, которые могут быть связаны с Блокировками. Они подобны в использовании неявным мониторам, к которым получают доступ, используя Object.wait, но предложение расширенные возможности. В частности многократный Condition объекты могут быть связаны с синглом Lock. Избегать проблем совместимости, имен Condition методы отличаются от соответствия Object версии.
AbstractQueuedSynchronizer class служит полезным суперклассом для того, чтобы определить блокировки и другие синхронизаторы, которые полагаются на организацию очередей блокированных потоков. AbstractQueuedLongSynchronizer class обеспечивает ту же самую функциональность, но расширяет поддержку 64 битам состояния синхронизации. Оба расширяют class AbstractOwnableSynchronizer, простой class, который помогает записать поток, в настоящий момент содержащий монопольную синхронизацию. LockSupport class оказывает блокирование низшего уровня и разблокирование поддержки, которая полезна для тех разработчиков, реализующих их собственные специализированные классы блокировки.
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92