public void Dispose()
 {
     if (_locked)
     {
         _lock?.ReadUnlock();
         _locked = false;
     }
     _lock = null;
 }
 internal ReadCanWriteLock(OcThreadLockReadWriteBase tl)
 {
     Debug.Assert(tl != null);
     _lock = tl;
 }