예제 #1
0
 public void RequestUnlock(object token)
 {
     if (_disposed)
     {
         return;
     }
     UnLockRequested?.Invoke(this, new GenericEventArgs <object>(token));
     _tokens.Remove(token);
 }
예제 #2
0
 protected virtual void Dispose(bool disposing)
 {
     if (!_disposed)
     {
         if (disposing)
         {
             _tokens.ForEach(token => UnLockRequested?.Invoke(this, new GenericEventArgs <object>(token)));
             UnLockRequested        = null;
             LockStatusChanged      = null;
             LockRequested          = null;
             _currentStatusCallback = null;
             _tokens.Clear();
             _tokens = null;
         }
         _disposed = true;
     }
 }