Можно создать область отображения данных, и изменения в неё считывать в конкретные куски времени.
Пока основной цикл вычисления не закончился то данные не обновляются.
Так же и с выгрузкой данных.
Так сделано в промышленных контроллерах и помогает избавится от влияния промежуточных результатов...