псевдокод с намёком на классы Qt и с большой возможностью оптимизации =) . реальные функции не помню, но можно понять и отыскать их в хелпе.
QTimer syncTimer();
connect(syncTymer,signal(timeout),this,slot(
QTimer realTimer();
realTimer.setInterval(1000); //1 sec
connect(realTimer,signal(timeout),куда,slot(надо));
realTimer.start();
));
QTime nowTime = QTime::current();
QString nextSecStr = nowTime.toStr("ЧЧ:ММ:") + QString::fromNumber( nowTime.toStr("СС").toNumber() + 2 ); //на всякий случай поставим на две секунды больше.
QTime nextSec = QTime::fromStr( nextSecStr );
syncTymer.singleShoot( nowTime.msecsTo( nextSecs ));
чисто теоретически вроде всё ок =)
на практике, скорее всего будет всё же разница в несколько миллисекунд.