public class WriterPreferenceReadWriteLock extends Object implements ReadWriteLock
Modifier and Type | Class and Description |
---|---|
protected class |
WriterPreferenceReadWriteLock.ReaderLock |
protected class |
WriterPreferenceReadWriteLock.Signaller
Reader and Writer requests are maintained in two different wait sets, by
two different objects.
|
protected class |
WriterPreferenceReadWriteLock.WriterLock |
Modifier and Type | Field and Description |
---|---|
protected long |
activeReaders_ |
protected Thread |
activeWriter_ |
protected WriterPreferenceReadWriteLock.ReaderLock |
readerLock_ |
protected long |
waitingReaders_ |
protected long |
waitingWriters_ |
protected WriterPreferenceReadWriteLock.WriterLock |
writerLock_ |
Constructor and Description |
---|
WriterPreferenceReadWriteLock() |
Modifier and Type | Method and Description |
---|---|
protected boolean |
allowReader()
Override this method to change to reader preference
|
protected void |
cancelledWaitingReader() |
protected void |
cancelledWaitingWriter() |
protected WriterPreferenceReadWriteLock.Signaller |
endRead()
Called upon termination of a read.
|
protected WriterPreferenceReadWriteLock.Signaller |
endWrite()
Called upon termination of a write.
|
Sync |
readLock()
get the readLock
|
protected boolean |
startRead() |
protected boolean |
startReadFromNewReader() |
protected boolean |
startReadFromWaitingReader() |
protected boolean |
startWrite() |
protected boolean |
startWriteFromNewWriter() |
protected boolean |
startWriteFromWaitingWriter() |
Sync |
writeLock()
get the writeLock
|
protected long activeReaders_
protected Thread activeWriter_
protected long waitingReaders_
protected long waitingWriters_
protected final WriterPreferenceReadWriteLock.ReaderLock readerLock_
protected final WriterPreferenceReadWriteLock.WriterLock writerLock_
public Sync writeLock()
ReadWriteLock
writeLock
in interface ReadWriteLock
public Sync readLock()
ReadWriteLock
readLock
in interface ReadWriteLock
protected void cancelledWaitingReader()
protected void cancelledWaitingWriter()
protected boolean allowReader()
protected boolean startRead()
protected boolean startWrite()
protected boolean startReadFromNewReader()
protected boolean startWriteFromNewWriter()
protected boolean startReadFromWaitingReader()
protected boolean startWriteFromWaitingWriter()
protected WriterPreferenceReadWriteLock.Signaller endRead()
protected WriterPreferenceReadWriteLock.Signaller endWrite()
Copyright © 2012-2013 Adele Team | LIG. All Rights Reserved.