void HandleTokenDisposal(BusyToken token) { lock (liveTokens) { liveTokens.Remove(token); RaiseStateChanged(IsAnythingBusy); } }
public IDisposable GetToken(string description = null) { var token = new BusyToken(HandleTokenDisposal, description); lock (liveTokens) { liveTokens.Add(token); RaiseStateChanged(IsAnythingBusy); } return(token); }