public Task StopDispatching() { stop = true; eventStoreSubscription?.Unsubscribe(); // hopefully additional check in PublishEvents (additional check for _stop after setting event) prevents race conditions if (!historicalDone.Wait(ThreadKillTimeoutMillisec)) { throw new TimeoutException("DispatchStoppingException"); } if (!liveDone.Wait(ThreadKillTimeoutMillisec)) { throw new TimeoutException("DispatchStoppingException"); } return(Task.CompletedTask); }
public void Stop() { _value.Unsubscribe(); }