internal virtual void AcquireWrite()
{
lock (this)
{
System.Diagnostics.Debug.Assert(writeThread != ThreadClass.Current());
while (writeThread != null || readCount > 0)
DoWait();
// We could have been closed while we were waiting:
EnsureOpen();
writeThread = ThreadClass.Current();
}
}