USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Dicas

  Visual Basic    (ActiveX/Controles/DLL)

Título da Dica:  Melhor forma de esvaziar uma collection
Postada em 3/9/2003 por Ð@®l@n            
Normalmente, quando desejamos esvaziar uma collection utilizamos o seguinte código :

for a=coll.count to 1 step -1
coll.remove a
next

O problema desse código é que para que o último item da collection seja removido o Vb precisa percorrer toda a collection, gerando perda de performance. Veja este outro exemplo :

for a=coll.count to 1 step -1
coll.remove 1
next

Neste caso o item que estará sendo removido da collection será sempre o 1o, melhorando a performance.

Segundo testes, o 1o item leva 4.10 segundos para eliminar um array de 10.000 itens, enquanto que o 2o leva 0.06 segundos.

Se o volume de dados for dobrado os números mudam : 0.12 para o 2o exemplo e 24 segundos para o 1o.

Mas não se esqueçam que a instrução :

Set coll=nothing

Roda em 0.05 segundos mesmo para uma collection com 20.000 itens.
 


CyberWEB Network Ltda.    © Copyright 2000-2021   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página