protected synchronized boolean startWriteFromWaitingWriter() { boolean pass = startWrite(); if (pass) --waitingWriters_; return pass; }
synchronized(this) { if (msecs <= 0) return startWrite(); else if (startWriteFromNewWriter()) return true;
synchronized(this) { if (msecs <= 0) return startWrite(); else if (startWriteFromNewWriter()) return true;
protected synchronized boolean startWriteFromNewWriter() { boolean pass = startWrite(); if (!pass) ++waitingWriters_; return pass; }
protected synchronized boolean startWriteFromNewWriter() { boolean pass = startWrite(); if (!pass) ++waitingWriters_; return pass; }
protected synchronized boolean startWriteFromWaitingWriter() { boolean pass = startWrite(); if (pass) --waitingWriters_; return pass; }