Ну, нужно учитывать, что не обновляет прогресс довольно часто.Собирается ли пользователь заметить разницу между его обновлением 100 раз в секунду и обновлением 10 раз в секунду?Возможно, вы захотите пакетные обновления.Сказав это, если только обновления на самом деле не станут проблематичными с точки зрения производительности, я бы не принял удар по сложности.
Однако, если вы выполняете значительный объем работы, выдолжно быть абсолютно в фоновом потоке.В противном случае ваш пользовательский интерфейс перестанет отвечать на запросы во время выполнения этой работы - и, в зависимости от некоторых деталей, обновления прогресса могут вообще не отображаться!
Даже если ваш код может ничего не делатьиначе поток пользовательского интерфейса все еще хочет иметь возможность реагировать на события - движения мыши и т. д.