Я разрабатываю систему, которой требуются таймеры на всех уровнях иерархии компонентов. Несколько таймеров могут быть активными одновременно, но они должны взаимодействовать друг с другом (остановка таймера компонента останавливает таймеры его потомков, в то время как запуск таймера компонента запускает таймеры его предков и останавливает таймеры его братьев и сестер).
Каждый таймер имеет разные ограничения и будет посылать события tick, start, stop и expire слушателям.
Это все еще на ранней стадии разработки (язык реализации все еще не определен), но я хочу избежать многопоточности. Любой совет?