Os arquivos tem todos aproximadamente 20k. Note que estou acompanhando o uso de memória tanto do meu programa quanto do interbase e nenhum apresenta aumento significativo de uso de memória. A memória do computador (acompanhando pelo gerenciador de tarefas) não ultrapassou 60% da disponível.
-----Mensagem original----- De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em nome de Leandro Augusto Soares Enviada em: domingo, 2 de maio de 2010 17:26 Para: delphi-br@yahoogrupos.com.br Assunto: Re: [delphi-br] Out off memory - Socorro Qual os tamanhos dos aquivos? []s Leandro Em 2 de maio de 2010 10:29, Reinaldo Aparecido Pereira < ctocv...@yahoo.com.br> escreveu: > > > Fiz o teste comitando a cada arquivo importado. Também não funcionou. > > Note que fiz a leitura do arquivo num TSTringlist (stlArquivo). > > Só para ter certeza absoluta, em cada interação do for liberei stlArquivo > mais ainda assim continua o OUT OF MEMORY. > > Tá difícil descobrir o que é. > > > De: delphi-br@yahoogrupos.com.br <delphi-br%40yahoogrupos.com.br> [mailto: > delphi-br@yahoogrupos.com.br <delphi-br%40yahoogrupos.com.br>] Em > nome de Murilo Cunha > Enviada em: sexta-feira, 30 de abril de 2010 10:34 > > Para: delphi-br@yahoogrupos.com.br <delphi-br%40yahoogrupos.com.br> > Assunto: Re: [delphi-br] Out off memory - Socorro > > Reinaldo, > > Acho que vc poderia COMMITAR a cada 100 arquivos importados. > Acho q eh esse o problema... estouro de transacao! > > Obrigado > MuriloCunha > > On 30/04/2010 10:26, Reinaldo Aparecido Pereira wrote: > > Amigos, > > > > Não entendo de gerenciamento de memória e o que tenho lido não resolveu > meu > > problema. Estou com a rotina abaixo que importa o conteúdo de 1000 > arquivos > > para um banco Firebird. Lá pelo arquivo 600 a aplicação trava e dá OUT > OFF > > MEMORY. O executável é muito pequeno e acompanhando o processo não parece > > ocupar quase nada de memória. > > > > O que acontece afinal? > > > > Como posso resolver isso? > > > > Grato.. > > > > > > > > > > > > for i := 0 to Arquivos.Count - 1 do > > > > begin > > > > ProgressBar1.Position := i; > > > > Arquivos.ItemIndex := i; > > > > stlArquivo.Clear; > > > > stlArquivo.LoadFromFile(Arquivos.Items[Arquivos.ItemIndex]); > > > > for x := 0 to stlArquivo.Count - 1 do > > > > begin > > > > //tblArtigos.Active := true; > > > > tblArtigos.Append; > > > > tblArtigos.FieldByName('ANO').Text := cbAno.Text; > > > > tblArtigos.FieldByName('NUM_LINHA').Value := x; > > > > tblArtigos.FieldByName('PK_ARQUIVO').Text := > > Trim(Arquivos.Items[Arquivos.ItemIndex]); > > > > tblArtigos.FieldByName('LINHA').Text := > > Copy(Trim(stlArquivo[x]), 0, 999); > > > > tblArtigos.Post; > > > > end; > > > > end; > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > ------------------------------------ > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > [As partes desta mensagem que não continham texto foram removidas] ------------------------------------ -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>