Beispiel #1
0
 public void UnregisterChangeCallback(ScopeTokenRegistration registration)
 {
     lock (_registrations)
         if (_registrations.Remove(registration) && _registrations.Count == 0)
         {
             _owner.RemoveScopeToken(_key);
         }
 }
Beispiel #2
0
 public IDisposable RegisterChangeCallback(Action <object> callback, object state)
 {
     lock (_registrations)
         if (!_hasChanged)
         {
             var registration = new ScopeTokenRegistration(this, callback, state);
             _registrations.Add(registration);
             return(registration);
         }
         else
         {
             return(Disposable.Empty);
         }
 }