Отцы, подскажите пожалуйста.
Есть уже оптимизированный по скорость цикл, где обрабатываются данные. Нужно прикрутить прогресбар что бы было видно что процесс не весит и знать когда обсчет данных завершится.
Проблема в том что не хочется загружать цикл и увеличивать без того приличное время обсчета данных.
Цикл запускаю в отдельном процессе.
Первая мысль сделать что то типа этого:
int end = 10000000; // это число будет меняться, для наглядность написал конкретное
int step = end/100;
for(int i=0; i<end; i++)
{
.
.
if( i%step == 0 )
{
::SendMessage( .. , (WPARAM)i, (LPARAM)end);
}
}
Но мне не нравится, что утяжеляется цикл постоянным делением по модулю. И ещё может быть окно перегружено кучей сообщений.
Хотелось бы как то организовать что то типа опроса процесса например каждые 0.5 секунд и желательно без нагрузки на сам цикл.
Если кто знает в какую сторону капать подскажите пожалуйста.
PS Может перед началом цикла сообщать родителю указатели на i и end, а в самом родительском процессе по таймеру приостанавливать этот процесс чтобы посмотреть цыфирки i и end?