public void Notify(string threadId, ThreadStateMachine tsm) { foreach (var item in observers) { item.Handle(threadId, tsm); } }
public void Handle(string threadId, ThreadStateMachine tsm) { switch (tsm) { case ThreadStateMachine.StartState: Console.WriteLine($"ThreadId: {threadId} running"); break; case ThreadStateMachine.StopState: Console.WriteLine($"ThreadId: {threadId} stopped"); break; case ThreadStateMachine.WaitState: Console.WriteLine($"ThreadId: {threadId} waiting"); break; } }