As @pchapuis points out, the read lock isn't needed when we're within the
writeLock guard, since the writeLock serializes all writes already.