Jump to content
MarcosPeixoto

Delphi Berlim - Lentidão na Compilação Debug

Recommended Posts

Olá, 

 

De um tempo para cá, ao compilar o sistema em modo debug, passou a demorar bastante para abrir a aplicação, o que torna bastante improdutivo quando existe a necessidade de depurar processos. 

 

Utilizo o Delphi Berlim, Update 1, instalei o IDE Fix e FastDCC64 que teoricamente corrige bugs e otimiza carregamento do delphi. 
Utilizo componentes de terceiros como ACBr, FastReports, GExperts, JEDI, TMS, ActiveQueryBuilder, etc... 
O Sistema Operacional é Win 10, atualizado com versão 1803, Core i5, 8Gb, HD SSD. 
Minha estrutura é multicamadas, e no caso o servidor já está levantado. 

 

Monitorando no "Event Log" do delphi ao compilar, são apresentadas várias mensagens de carregamento de recursos de dlls e é nesse ponto que há uma lentidão enorme. 
São apresentadas mensagens "Module Load: " + nome da dll + " No Debug Info". Segue algumas linhas que são apresentadas como exemplo: 

 

Citar

 

Thread Start: Thread ID: 10400. Process NomeDaAplicacao.exe (6444) 
... 
Module Load: ntdll.dll. No Debug Info. Base Address: $77B00000. Process NomeDaAplicacao.exe (6444) 
Module Load: KERNEL32.dll. No Debug Info. Base Address: $76E10000. Process NomeDaAplicacao.exe (6444) 
Module Load: OLEAUT32.dll. No Debug Info. Base Address: $77970000. Process NomeDaAplicacao.exe (6444) 
... 
Thread Start: Thread ID: 1476. Process NomeDaAplicacao.exe (6444) 
Module Load: combase.dll. No Debug Info. Base Address: $76B40000. Process NomeDaAplicacao.exe (6444) 
Module Load: ClienteTek.dll. No Debug Info. Base Address: $0B6A0000. Process NomeDaAplicacao.exe (6444) 
Module Unload: ClienteTek.dll. Process NomeDaAplicacao.exe (6444) 
Module Load: ClienteTek.dll. No Debug Info. Base Address: $0B6A0000. Process NomeDaAplicacao.exe (6444) 
Module Unload: ClienteTek.dll. Process NomeDaAplicacao.exe (6444) 
... 

 

 

Notei que algumas dessa dlls são apresentadas mais de uma vez, me parecendo fazer carregamento das mesmas coisas repetidas vezes, suponho ser uma anormalidade. 

Para se ter uma idéia, para um dos meus menores módulos, o executável compilado em debug fica com cerca de 100Mb e leva aproximadamente 6 minutos para ser gerado. 
O mesmo executável compilado em modo release, fica com 8.8Mb, e leva menos de 1 minuto para ser gerado. 

 

Não consegui identificar ainda as causas disso. Alguém passou por essa situação ou tem alguma sugestão? 

 

Marcos

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By kelson_mc
      Olá...
       
      sou novo em Delphi e gostaria de saber como fazer buscas de informações via snmp para a plataforma mobile ?
    • By luca0202
      SQL state: 42000 SQL error code 8179
      Não foi possivel encontrar a instrução preparada como o identificador - 1
      estou utilizando o os componentes dbExpress ai quando eu testo no meu computador que e windows 10 roda de boinha ai quando vou testar no pc de outra pessoa que e windows 7 da esse erro quando vou abrir um um dbgrid
      o que pode ser esse erro ? alguem me ajude ?
      obs: estou utilizando o banco sql server
    • By amauri.alves
      Bom dia,
      Estou em uma estação windows tentando me conectar a uma base SQL Server 2012 que está em um servidor Linux e estou tendo o seguinte problema.
      O Sistema tem duas instalações rodando em dois ambientes de servidores.
      Uma equipe utiliza o sistema com a base em um servidor Windows. Isto está funcionando sem problemas.
      Uma outra equipe vai precisar utilizar uma outra instalação do mesmo sistema porem esta terá que utilizar a mesma base instalada em um servidor Linux.
      O Sql Server manager está correto, conectou sem problemas e me responde todas as tabelas sem erros, lista todas as querys e executa todas as procedures views e triguers.
      A Conexão OBDC tambem respondeu sem erros e deu teste de conexção concluido com exito.

      No delphi eu utilizo Ado conection para me conectar à base, e ele responde também sem erros e testa a conexão retornando 
      teste de conexção concluido com exito.
      Até ai está tudo certo.
      O Problema é o seguinte.
      Quando eu ligo uma adotable ou uma ado query ele tambem conecta sem me retornar nenhum erro porem as tabelas não me trazem valor algum, elas respondem como se a base estivesse Vazia.
      Alguem sabe o que eu posso estar fazendo de errado?
      Obs. A Instalação está em dois Ambientes por que a demanda é desativar o servidor Windows e deixar somente a instalaçao Linux.

      **************************************************************
      Ambiente: Estação Windows 10
                Delphi 10.3 
                Sql Server 2012 Instalada em um Servidor Linux
                Conexão ODBC
      **************************************************************
    • By luca0202
      ola fiz a instalação de um programa que eu fiz e deu o seguinte erro : SQL state: 42000 SQL error code 8179
      Não foi possivel encontrar a instrução preparada como o identificador - 1.
      O que pode ser ? estou usando componentes dbexpress
    • By amauri.alves
      Boa Noite.

      Estou desenvolvendo um relatório utilizando o fastreport e estou com o seguinte problema.

      É um relatório de pedidos e por tanto precisa imprimir um pedido, voltar para a tela de parâmetros imprimir o próximo e assim sucessivamente.

      Porem o primeiro relatório vai certinho mas ele não limpa os dados e os próximos relatórios saem todos iguais ao primeiro.

      Ja tentei iniciar ele de varias formas diferente e nenhuma deu certo atualmente estou iniciando ele assim.

      *******************************************
      fr:=frxRComanda.Create(self);
      fr.LoadFromFile('Commanda.fr3');
      fr.PrepareReport(); // Prmeiro relatório setar True para limpar todos os anteriores
      fr.ShowReport;
      fr.clear;
      fr.free;
      ********************************************
      Ambiente: - Delphi 10.3
                            FastReport 6
                            SqlServer 2012
                           Windows 10

      Alguem ja pegou uma situação desta?
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.