Timer::Timer(base::lambda<void()> callback) : QObject(nullptr) , _callback(std::move(callback)) , _type(Qt::PreciseTimer) , _adjusted(false) { setRepeat(Repeat::Interval); connect(TimersAdjuster(), &QObject::destroyed, this, [this] { adjust(); }, Qt::QueuedConnection); }
void Timer::Adjust() { QObject emitter; connect( &emitter, &QObject::destroyed, TimersAdjuster(), &QObject::destroyed); }