using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Timers; namespace Observer.TimerObserver { class Subject { public event EventHandler Changed; public Subject() { Timer timer = new Timer(1000); timer.Elapsed += Timer_Elapsed; timer.Start(); } private void Timer_Elapsed(object sender, ElapsedEventArgs e) { if (Changed == null) return; Changed(this, e); } } }