| This lock allows multiple read locks concurrently. Once a writer
has requested the lock, future read-lock requests whose transactions
do not already have the read lock will block until all writers are
done -- then all the waiting readers will concurrently go (depending
on the reentrant setting / methodLock). A reader who promotes gets
first crack at the write lock -- ahead of other waiting writers. If
there is already a reader that is promoting, we throw an inconsistent
read exception. Of course, writers have to wait for all read-locks
to release before taking the write lock.
author: Peter Murray version: $Revision: 57209 $ version: Revisions:
version: 2002/6/4: yarrumretep version: version: - Initial revision
version:
|