Это чревато визуальной задержкой, когда пользователь успеет заметить латентность отклика. При мышиных/клавиатурных действиях такое нежелательно. А вообще - нормальная идея, если нужно склеить несколько обновлений в одно. К примеру, состояние долгой операции (качание файла) совсем не обязательно обновлять каждые 1 мс, достаточно накопить изменения и показать их через 1 с. Например:
C++ (Qt)
bool MyObject::event( QEvent * e )
{
if ( e->type() == MyCystomEventType )
{
setOfWidgets_ << someWidget;
if ( !myTimer_.isActive() )
myTimer_.start( 0, this );
return true;
}
return ParentObject::event( e );
}
void MyObject::timerEvent( QTimerEvent * e )
{
if ( e->timerId() == myTimer_.timerId() )
{
foreach( QWidget * widget, setOfWidgets_ )
widget->update();
myTimer_.stop();
return;
}
ParentObject::timerEvent( e );
}