Re[16]: Школа С++ от UNIGINE
От: AlexGin Беларусь  
Дата: 10.03.17 09:12
Оценка:
Здравствуйте, Stanislav V. Zudin, Вы писали:

SVZ>А если убрать из теста обращение к гуёвым методам?

SVZ>
SVZ>...
SVZ>      if (!(i % 100000))
SVZ>      {
SVZ>          int val = ui->progressBar->value();
          ui->>progressBar->setValue(++val);
SVZ>      }
SVZ>...
SVZ>


SVZ>Какие будут результаты?

Практически теми же, что и есть (эти обращения погоды не делают).
Если уже делать всё точно, то вместо измерений времени
    std::time_t timeStart = std::time(0);

правильнее было применить мультимедийный таймер:
https://msdn.microsoft.com/ru-ru/library/windows/desktop/dd757629(v=vs.85).aspx
Однако, ИМХО, это уже Windows специфика, которая не позволит компилировать данный тест для Linux.

SVZ>Мне тоже любопытно, но mingw у меня не установлено.

Качаем (в составе Qt) отсюда:
https://download.qt.io/official_releases/qt
и вперёд!

Выяснилось — что отрезок выше можно заменить на:
   if (!(i % 100000))
       QCoreApplication::processEvents();

Это обеспечит прокачку сообщений OS Windows (и поможет избежать лишних тормозов и задержек).
Отредактировано 11.03.2017 22:56 AlexGin . Предыдущая версия . Еще …
Отредактировано 10.03.2017 9:20 AlexGin . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.