Muito boa sugestão!

 As vezes a gente complica algo que é muito simples por estar stressado demais.
Obrigado.
 


----- Mensagem original ----
De: Rubem Nascimento da Rocha <[EMAIL PROTECTED]>
Para: delphi-br@yahoogrupos.com.br
Enviadas: Terça-feira, 30 de Outubro de 2007 14:40:45
Assunto: RE: Res: RES: [delphi-br] Estimar  o tempo que será gasto com uma 
tarefa









  


    
            

Imagino que vc, ao fazer essa inclusão de registros, esteja envolvendo toda a 
operação dentro de um contexto transacional. Após iniciar a transação, 
cronometre o tempo gasto na execução da primeira operação de inclusão. Como 
fazer isso? Muito simples!

 

Após iniciar a transação e antes de efetuar a primeira operação de INSERT, 
pegue a 'hora inicial' usando o valor retornado pela função GetTickCount( ), da 
API do Windows (unit Windows). Após a execução do INSERT, pegue a 'hora atual' 
usando novamente GetTickCount( ). A diferença entre este valor e o valor 
capturado no início (em milissegundos) permitem estimar quanto tempo uma única 
operação irá levar. O tempo total será, portanto, a quantidade de registros a 
serem incluídos multiplicado por essa diferença encontrada.

Dessa forma, pode-se montar um tela com uma barra de progresso que, além de 
mostrar o andamento atual do processamento, poderá mostrar o tempo estimado e o 
tempo atual de processamento da operação.

 

Esta é a minha sugestão. Não recomendo ir tão à fundo no cálculo dessa 
estimativa baseando-se no tempo de execução de outros processos. Acredito que 
esse básico seja mais do que suficiente. Agora, se a operação estiver levando 
mais tempo que o normal, seria o caso de rever o algoritmo usado neste processo 
para que este seja otimizado, seja este processo o que for.

 

Sds.



To: [EMAIL PROTECTED] os.com.brFrom: evaldoavelar@ yahoo.com. brDate: Tue, 30 
Oct 2007 10:17:27 -0700Subject: Res: RES: [delphi-br] Estimar o tempo que será 
gasto com uma tarefa



Já uso a barra, mas eu queria mesmo era dar uma estimativa antes de começar a 
tarefa.----- Mensagem original ----De: Davi Eduardo Borges Wall <[EMAIL 
PROTECTED] com.br>Para: [EMAIL PROTECTED] os.com.brEnviada s: Terça-feira, 30 
de Outubro de 2007 15:05:03Assunto: RES: [delphi-br] Estimar o tempo que será 
gasto com uma tarefaUma barra de progresso não ajudaria?De: [EMAIL PROTECTED] 
os.com.br [mailto:delphi- [EMAIL PROTECTED] os.com.br] Em nome de EvaldoEnviada 
em: terça-feira, 30 de outubro de 2007 13:54Para: [EMAIL PROTECTED] 
os.com.brAssunto: [delphi-br] Estimar o tempo que será gasto com uma 
tarefaAlguém tem alguma formula onde eu possa calcular o tempo que será gasto 
com o processamento de uma tarefa? Por exemplo: vou inserir 4000 registro no 
banco, então eu faria o calculo de aproximação do tempo que será gasto para a 
inserção dos registros e mostraria uma msg ao usuário com o tempo estimado . 
Penso que teria que levar em
 consideração o hardware da máquina e os processos que já estão rodando no 
momento.É possível fazer esse calculo?Abra sua conta no Yahoo! Mail, o único 
sem limite de espaço para armazenamento!http://br.mail. yahoo.com/[As partes 
desta mensagem que não continham texto foram removidas][As partes desta 
mensagem que não continham texto foram removidas]<! --#ygrp-mkp{ border:1px 
solid #d8d8d8;font- family:Arial; margin:14px 0px;padding: 0px 14px;}#ygrp- mkp 
hr{border:1px solid #d8d8d8;}#ygrp- mkp #hd{color:#628c2a; font-size: 85%;font- 
weight:bold; line-height: 122%;margin: 10px 0px;}#ygrp-mkp #ads{margin- 
bottom:10px; }#ygrp-mkp .ad{padding: 0 0;}#ygrp-mkp .ad a{color:#0000ff; 
text-decoration: none;}--> <!--#ygrp- sponsor #ygrp-lc{font- family:Arial; 
}#ygrp-sponsor #ygrp-lc #hd{margin:10px 0px;font-weight: bold;font- size:78%; 
line-height: 122%;}#ygrp- sponsor #ygrp-lc .ad{margin-bottom: 10px;padding: 0 
0;}--><!--#ygrp- mlmsg {font-size:13px;
 font-family: arial, helvetica, clean, sans-serif;} #ygrp-mlmsg table 
{font-size:inherit; font:100% ;}#ygrp-mlmsg select, input, textarea {font:99% 
arial, helvetica, clean, sans-serif;} #ygrp-mlmsg pre, code {font:115% 
monospace;}# ygrp-mlmsg * {line-height: 1.22em;}# ygrp-text{ font-family: 
Georgia;} #ygrp-text p{margin:0 0 1em 0;}#ygrp-tpmsgs{ font-family: 
Arial;clear: both;}#ygrp- vitnav{padding- top:10px; font-family: Verdana;font- 
size:77%; margin:0; }#ygrp-vitnav a{padding:0 1px;}#ygrp-actbar{ clear:both; 
margin:25px 0;white-space: nowrap;color: #666;text- align:right; }#ygrp-actbar 
.left{float: left;white- space:nowrap; }.bld{font- weight:bold; }#ygrp-grft{ 
font-family: Verdana;font- size:77%; padding:15px 0;}#ygrp-ft{ font-family: 
verdana;font- size:77%; border-top: 1px solid #666;padding: 5px 0;}#ygrp-mlmsg 
#logo{padding- bottom:10px; }#ygrp-vital{ background- color:#e0ecee; 
margin-bottom: 20px;padding: 2px 0 8px 8px;}#ygrp-vital #vithd{font-
 size:77%; font-family: Verdana;font- weight:bold; color:#333; text-transform: 
uppercase; }#ygrp-vital ul{padding:0; margin:2px 0;}#ygrp-vital ul 
li{list-style- type:none; clear:both; border:1px solid #e0ecee;}#ygrp- vital ul 
li .ct{font-weight: bold;color: #ff7900;float: right;width: 2em;text- 
align:right; padding-right: .5em;}#ygrp- vital ul li .cat{font-weight: 
bold;}#ygrp- vital a{text-decoration: none;}#ygrp- vital a:hover{text- 
decoration: underline; }#ygrp-sponsor #hd{color:#999; font-size: 77%;}#ygrp- 
sponsor #ov{padding: 6px 13px;background- color:#e0ecee; margin-bottom: 
20px;}#ygrp- sponsor #ov ul{padding:0 0 0 8px;margin:0; }#ygrp-sponsor #ov 
li{list-style- type:square; padding:6px 0;font-size: 77%;}#ygrp- sponsor #ov li 
a{text-decoration: none;font- size:130% ;}#ygrp-sponsor #nc{background- 
color:#eee; margin-bottom: 20px;padding: 0 8px;}#ygrp-sponsor .ad{padding: 8px 
0;}#ygrp-sponsor .ad #hd1{font-family: Arial;font- weight:bold;
 color:#628c2a; font-size: 100%;line- height:122% ;}#ygrp-sponsor .ad 
a{text-decoration: none;}#ygrp- sponsor .ad a:hover{text- decoration: 
underline; }#ygrp-sponsor .ad p{margin:0;} o{font-size: 0;}.MsoNormal{ margin:0 
0 0 0;}#ygrp-text tt{font-size: 120%;}blockquote {margin:0 0 0 4px;}.replbq{ 
margin:4; }-->Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!http://br.mail. yahoo.com/[As partes desta mensagem que não 
continham texto foram removidas] 



____________ _________ _________ _________ _________ _________ _

Encontre o que procura com mais eficiência! Instale já a Barra de Ferramentas 
com Windows Desktop Search GRÁTIS!

http://desktop. msn.com.br/



[As partes desta mensagem que não continham texto foram removidas]





    
  

    
    




<!--

#ygrp-mkp{
border:1px solid #d8d8d8;font-family:Arial;margin:14px 0px;padding:0px 14px;}
#ygrp-mkp hr{
border:1px solid #d8d8d8;}
#ygrp-mkp #hd{
color:#628c2a;font-size:85%;font-weight:bold;line-height:122%;margin:10px 0px;}
#ygrp-mkp #ads{
margin-bottom:10px;}
#ygrp-mkp .ad{
padding:0 0;}
#ygrp-mkp .ad a{
color:#0000ff;text-decoration:none;}
-->



<!--

#ygrp-sponsor #ygrp-lc{
font-family:Arial;}
#ygrp-sponsor #ygrp-lc #hd{
margin:10px 0px;font-weight:bold;font-size:78%;line-height:122%;}
#ygrp-sponsor #ygrp-lc .ad{
margin-bottom:10px;padding:0 0;}
-->



<!--

#ygrp-mlmsg {font-size:13px;font-family:arial, helvetica, clean, sans-serif;}
#ygrp-mlmsg table {font-size:inherit;font:100%;}
#ygrp-mlmsg select, input, textarea {font:99% arial, helvetica, clean, 
sans-serif;}
#ygrp-mlmsg pre, code {font:115% monospace;}
#ygrp-mlmsg * {line-height:1.22em;}
#ygrp-text{
font-family:Georgia;
}
#ygrp-text p{
margin:0 0 1em 0;}
#ygrp-tpmsgs{
font-family:Arial;
clear:both;}
#ygrp-vitnav{
padding-top:10px;font-family:Verdana;font-size:77%;margin:0;}
#ygrp-vitnav a{
padding:0 1px;}
#ygrp-actbar{
clear:both;margin:25px 0;white-space:nowrap;color:#666;text-align:right;}
#ygrp-actbar .left{
float:left;white-space:nowrap;}
.bld{font-weight:bold;}
#ygrp-grft{
font-family:Verdana;font-size:77%;padding:15px 0;}
#ygrp-ft{
font-family:verdana;font-size:77%;border-top:1px solid #666;
padding:5px 0;
}
#ygrp-mlmsg #logo{
padding-bottom:10px;}

#ygrp-vital{
background-color:#e0ecee;margin-bottom:20px;padding:2px 0 8px 8px;}
#ygrp-vital #vithd{
font-size:77%;font-family:Verdana;font-weight:bold;color:#333;text-transform:uppercase;}
#ygrp-vital ul{
padding:0;margin:2px 0;}
#ygrp-vital ul li{
list-style-type:none;clear:both;border:1px solid #e0ecee;
}
#ygrp-vital ul li .ct{
font-weight:bold;color:#ff7900;float:right;width:2em;text-align:right;padding-right:.5em;}
#ygrp-vital ul li .cat{
font-weight:bold;}
#ygrp-vital a{
text-decoration:none;}

#ygrp-vital a:hover{
text-decoration:underline;}

#ygrp-sponsor #hd{
color:#999;font-size:77%;}
#ygrp-sponsor #ov{
padding:6px 13px;background-color:#e0ecee;margin-bottom:20px;}
#ygrp-sponsor #ov ul{
padding:0 0 0 8px;margin:0;}
#ygrp-sponsor #ov li{
list-style-type:square;padding:6px 0;font-size:77%;}
#ygrp-sponsor #ov li a{
text-decoration:none;font-size:130%;}
#ygrp-sponsor #nc{
background-color:#eee;margin-bottom:20px;padding:0 8px;}
#ygrp-sponsor .ad{
padding:8px 0;}
#ygrp-sponsor .ad #hd1{
font-family:Arial;font-weight:bold;color:#628c2a;font-size:100%;line-height:122%;}
#ygrp-sponsor .ad a{
text-decoration:none;}
#ygrp-sponsor .ad a:hover{
text-decoration:underline;}
#ygrp-sponsor .ad p{
margin:0;}
o{font-size:0;}
.MsoNormal{
margin:0 0 0 0;}
#ygrp-text tt{
font-size:120%;}
blockquote{margin:0 0 0 4px;}
.replbq{margin:4;}
-->








      Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

[As partes desta mensagem que não continham texto foram removidas]

Responder a