Qual é a melhor maneira de encontrar código de longa execução em um aplicativo Windows Forms

StackOverflow https://stackoverflow.com/questions/3942

  •  08-06-2019
  •  | 
  •  

Pergunta

Herdei um aplicativo Windows Forms escrito em VB.Net.Certas partes do aplicativo são terrivelmente lentas.Qual é a maneira mais fácil de descobrir quais partes do código estão atrasando as coisas?Estou procurando uma maneira de encontrar rapidamente as sub-rotinas mais lentas e resolvê-las primeiro, na tentativa de acelerar o aplicativo.

Eu sei que existem vários produtos de perfil de código disponíveis para compra que mostrarão quanto tempo leva cada sub-rotina, mas eu esperava encontrar um livre solução.

Foi útil?

Solução

Agradeço o desejo de encontrar software livre.No entanto, neste caso, recomendo fortemente que se considere todas as opções, incluindo produtos comerciais.Tentei jogar com o nProf (que está na versão 0.1, eu acho) e não tive muita sorte.Mesmo assim, traçar o perfil de desempenho de um aplicativo é um negócio sutil e é melhor abordado usando uma ferramenta poderosa e flexível.A menos que você trabalhe de graça, acredito fortemente que o tempo que você economizará usando um produto profissional superará em muito o custo de uma licença.E, claro, se você deseja criar o perfil de apenas um aplicativo, cada pacote comercial tem uma avaliação de 15 ou 30 dias, tempo mais que suficiente para identificar quaisquer problemas em um aplicativo existente.E se você precisar de suporte de perfil para mais do que apenas um projeto único, é melhor comprar uma ferramenta completa de qualquer maneira.

Nós usamos o Perfilador ANTS da RedGate e estou muito feliz com isso.Eu também usei Perfilador de memória .NET com excelentes resultados.O legal do .NET Memory Profiler é que ele pode anexar e criar perfis de aplicativos de produção em execução, o que realmente nos salvou quando tivemos um vazamento de memória na produção que não conseguimos reproduzir em nosso laboratório de testes.

O pessoal da JetBrains tem um criador de perfil também chamado dotTrace que ainda não experimentei, mas tenho que acreditar que, se vier da loja JetBrains, provavelmente também será de primeira qualidade.

De qualquer forma, meu conselho é este:tente consertar seu aplicativo dentro da janela de teste gratuito de um ou uma combinação agregada dos três (mínimo de 45 dias de uso gratuito) e se isso não for tempo suficiente, escolha o seu favorito e escolha um deles.Você não vai se arrepender.

Outras dicas

nProf é um criador de perfil .Net gratuito (referência).

nProf é uma ferramenta boa e gratuita para criação de perfil .Net.

O Visual Studio também vem com um criador de perfil de desempenho que é muito bom.ele não vem com todas as versões - para o VS2008, acho que é a Developer Edition que você precisa.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top