## EDU.oswego.cs.dl.util.concurrent
Class ReaderPreferenceReadWriteLock

    java.lang.Object
      EDU.oswego.cs.dl.util.concurrent.WriterPreferenceReadWriteLock
          EDU.oswego.cs.dl.util.concurrent.ReaderPreferenceReadWriteLock

All Implemented Interfaces:
  ReadWriteLock

    public class ReaderPreferenceReadWriteLock

extends WriterPreferenceReadWriteLock

A ReadWriteLock that prefers waiting readers over waiting writers when there is contention. The range of applicability of this class is very limited. In the majority of situations, writer preference locks provide more reasonable semantics.

[ Introduction to this package. ]

Nested Class Summary

Nested classes/interfaces inherited from class EDU.oswego.cs.dl.util.concurrent.WriterPreferenceReadWriteLock
`WriterPreferenceReadWriteLock.ReaderLock, WriterPreferenceReadWriteLock.Signaller, WriterPreferenceReadWriteLock.WriterLock`

Field Summary

Fields inherited from class EDU.oswego.cs.dl.util.concurrent.WriterPreferenceReadWriteLock
`activeReaders_, activeWriter_, readerLock_, waitingReaders_, waitingWriters_, writerLock_`

Constructor Summary
`ReaderPreferenceReadWriteLock()`

Method Summary
`protected boolean` `allowReader()` Override this method to change to reader preference

Methods inherited from class EDU.oswego.cs.dl.util.concurrent.WriterPreferenceReadWriteLock
`cancelledWaitingReader, cancelledWaitingWriter, endRead, endWrite, readLock, startRead, startReadFromNewReader, startReadFromWaitingReader, startWrite, startWriteFromNewWriter, startWriteFromWaitingWriter, writeLock`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ReaderPreferenceReadWriteLock

    public ReaderPreferenceReadWriteLock()

Method Detail

### allowReader

    protected boolean allowReader()

  Description copied from class: `WriterPreferenceReadWriteLock`
  Override this method to change to reader preference

  Overrides:
    `allowReader` in class `WriterPreferenceReadWriteLock`