Не ясно, какую библиотеку классов вы используете. Однако вызов Update () в корне неверен. Окрашивание пользовательского интерфейса является задачей с низким приоритетом, ее следует выполнять только тогда, когда о более важных вещах не нужно заботиться.
Надлежащим способом является вызов Invalidate (). Вы можете вызывать его столько раз, сколько захотите, он не может «создать резервную копию». Когда поток пользовательского интерфейса будет готов и готов, он будет рисовать пользовательский интерфейс. Если изменения происходят быстрее, тогда поток пользовательского интерфейса может справиться с этим, тогда никакого вреда не будет, промежуточное рисование просто не произошло.
Что, в общем-то, вам нужно позаботиться. Довольно легко стрелять ногой и вызывать сотни раз в секунду. Что бессмысленно, человек не может воспринимать изменения так быстро. Сорок раз в секунду достаточно, это выглядит так же гладко, как кино в кино. Реально вы должны использовать меньше.