Сообщения закидывает в очередь, они обрабатываются последовательно, как очередь придет так и нарисует, по очереди.
Только вот не в случае QWidget::update(). Ибо
This function does not cause an immediate repaint; instead it schedules a paint event for processing when Qt returns to the main event loop. This permits Qt to optimize for more speed and less flicker than a call to repaint() does.
Calling update() several times normally results in just one paintEvent() call.
Вы можете сделать blocksignal(true), а в конце отключить. Если не хотите чтобы класс вызывал сигналы, в процессе обновления его содержимого.
Только вот опять не этом случае, т.к. никакие сигналы не испускаются.
Здесь можно использовать QWidget::updatesEnabled() и то для QGraphicsView::viewport().
2 TC:
Для быстрого обновления видимой части рекомендую использовать
C++ (Qt)
QGraphicsView::viewport()->update();