Uma alternativa simples é atualizar somente a cada um segundo.
Se quiser minha rotina com cálculo de tempo.
Em harbourdoc.com.br, user interface,
www.harbourdoc.com.br, GrafTime()
link direto:
http://www.harbourdoc.com.br/show.asp?s ... GrafTime()
Basicamente pra usar poderia ser:
Código: Selecionar todos
GrafTime( "Fazendo reindexação" )
INDEX ON .... TO ... EVAL GrafTime( RecNo(), LastRec() )
ou
Código: Selecionar todos
nAtual := 0
nTotal := LastRec()
GrafTtime( "Fazendo processamento" )
DO WHILE .NOT. Eof()
GrafTime( nAtual++, nTotal )
SKIP
ENDDO
A rotina usa as duas últimas linhas da tela para o gráfico.
Nota:
Já comentei por aqui, a coisa mais difícil de eu fazer é reindexar.
Se ocorrer uma vez cada dois meses, pra mim ainda considero muito, já que é bem eventual mesmo.
Sempre foi assim, desde os tempos do Clipper.
Aqui uso um cálculo de LastRec() + ( LastRec() * Qtd. índices ), somando de todos os arquivos, pra ter um gráfico da reindexação total, e não individual. (a reindexação também faz o "pack")