le-nn / memento

A simple client-side state management container for Blazor/.NET includes redo/undo and ReduxDevTools support.

Home Page:https://github.com/le-nn/memento

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fix an exception that occurred when interrupting an operation

le-nn opened this issue · comments

commented

internal void InvokeObserver(StateChangedEventArgs<TState> e) {

    internal void InvokeObserver(StateChangedEventArgs<TState> e) {
            foreach (var obs in _observers.ToArray()) {
                obs.OnNext(e);
            }
    }
commented

Currently, migrated to using ConcurrentDictionary.

readonly ConcurrentDictionary<Guid, IObserver<IStateChangedEventArgs<TState, TCommand>>> _observers = new();

foreach (var (_, obs) in _observers) {