Unlocks lock. If a thread is waiting to lock lock for writing and
all locks for reading have been unlocked, the waiting thread is
woken up and can lock lock for writing. If no thread is waiting to
lock lock for writing, and some thread or threads are waiting to
lock lock for reading, the waiting threads are woken up and can
lock lock for reading.
Unlocks lock. If a thread is waiting to lock lock for writing and all locks for reading have been unlocked, the waiting thread is woken up and can lock lock for writing. If no thread is waiting to lock lock for writing, and some thread or threads are waiting to lock lock for reading, the waiting threads are woken up and can lock lock for reading.