Dicas e truques de desempenho do Visual Studio
As recomendações de desempenho do Visual Studio destinam-se a situações de pouca memória, que podem ocorrer em casos raros. Nessas situações, você pode otimizar determinados recursos do Visual Studio que você pode não estar usando. As dicas a seguir não pretendem ser recomendações gerais.
Observação
Se estiver a ter dificuldade em utilizar o produto devido a problemas de memória, informe-nos através da ferramenta de feedback .
Usar um sistema operacional de 64 bits
Se você atualizar seu sistema de uma versão de 32 bits do Windows para uma versão de 64 bits, você expande a quantidade de memória virtual disponível para o Visual Studio de 2 GB para 4 GB. Uma atualização do sistema operacional de 64 bits permite que o Visual Studio lide com cargas de trabalho maiores.
Para obter mais informações, consulte Limites de memória para versões do Windows e do Windows Server.
Dica
O Visual Studio 2022 no Windows é um aplicativo de 64 bits. As versões anteriores são de 32 bits.
Desativar a restauração automática de arquivos
O Visual Studio reabre automaticamente documentos que foram deixados abertos na sessão anterior. Essa ação de restauração automática de arquivos pode prolongar os tempos necessários para carregar uma solução em até 30% ou mais, dependendo do tipo de projeto e dos documentos que estão sendo abertos. Designers como Windows Forms e XAML, e alguns arquivos JavaScript e TypeScript, podem demorar a abrir.
O Visual Studio notifica você em uma barra amarela quando a restauração automática de documentos está fazendo com que uma solução seja carregada mais lentamente. Pode desativar a reabertura automática de ficheiros seguindo estes passos:
Selecione Ferramentas>Opções para abrir a caixa de diálogo Opções .
Na página Projetos e Soluções
Geral , desmarque a opção Reabrir documentos ao carregar a solução .
Se você desabilitar a restauração automática de arquivos, uma maneira rápida de navegar até os arquivos que deseja abrir é usando um dos comandos Ir para:
Para obter a funcionalidade geral Ir para, selecione Editar>Ir para>Ir para todos osou pressione Ctrl+T.
Vá para o último local de edição em uma solução usando Editar>Ir para>Ir para o último local de ediçãoou pressionando Ctrl+Shift+Backspace.
Use Ir para o Arquivo Recente para ver uma lista de arquivos visitados recentemente numa solução. Selecione Editar>Ir para>Ir parade arquivo recente ou pressione Ctrl+1, Ctrl+R.
Configurar opções de depuração
Se você normalmente estiver com pouca memória durante as sessões de depuração, poderá otimizar o desempenho fazendo uma ou mais alterações de configuração.
Ativar Apenas o Meu Código
A otimização mais simples é habilitar o recurso Just My Code, que carrega apenas símbolos para o seu projeto. Habilitar esta funcionalidade pode resultar numa economia significativa de memória para a depuração de aplicações geridas (.NET). Esta opção já está habilitada por padrão em alguns tipos de projeto.
Para habilitar Apenas Meu Código , escolha Ferramentas>Opções>Depuração>Geral e, em seguida, selecione Ativar Apenas Meu Código.
Especificar símbolos para carregar
Para depuração nativa, o carregamento de arquivos de símbolos (.pdb) é caro em termos de recursos de memória. Pode configurar as definições dos símbolos do depurador para conservar memória. Normalmente, você configura a solução para carregar apenas módulos do seu projeto.
Para especificar o carregamento de símbolos, escolha Ferramentas>Opções>Depuração>Símbolos.
Defina as opções como Carregar apenas módulos especificados em vez de Carregar todos os módulose, em seguida, especifique quais módulos você deseja carregar. Durante a depuração, pode também clicar com o botão direito do rato em módulos específicos na janela Módulos para incluir explicitamente um módulo na carga de símbolos. (Para abrir a janela durante a depuração, escolha Depurar>Módulos do Windows>.)
Para obter mais informações, consulte Especificar arquivos de símbolo e de origem no depurador.
Desativar ferramentas de diagnóstico
É recomendável desativar a criação de perfil da CPU após o uso. Esse recurso pode consumir grandes quantidades de recursos. Depois que a criação de perfil da CPU estiver ativada, esse estado será persistido nas sessões de depuração subsequentes, por isso vale a pena desativá-lo explicitamente quando terminar. Você pode economizar alguns recursos desativando as ferramentas de diagnóstico durante a depuração, caso não precise das funcionalidades fornecidas.
Para desativar as Ferramentas de Diagnóstico
, inicie uma sessão de depuração, selecione Ferramentas Opções Depuração Geral , e, em seguida, desmarque a opçãoAtivar Ferramentas de Diagnóstico ao depurar .Para obter mais informações, consulte Ferramentas de criação de perfil.
Desativar ferramentas e extensões
Algumas ferramentas ou extensões podem ser desativadas para melhorar o desempenho.
Dica
Muitas vezes, você pode isolar problemas de desempenho desativando extensões uma de cada vez e verificando novamente o desempenho.
Serviço de linguagem gerido (Roslyn)
Para obter informações sobre considerações de desempenho da plataforma de compilador .NET ("Roslyn"), consulte Considerações de desempenho para soluções grandes.
desativar o CodeLens
O Visual Studio executa uma tarefa Localizar Todas as Referências em cada método conforme ele é exibido. CodeLens fornece recursos como a exibição em linha do número de referências. O trabalho é executado em um processo separado, como ServiceHub.RoslynCodeAnalysisService32. Em soluções de grande porte ou em sistemas com recursos limitados, esse recurso pode ter um impacto significativo no desempenho. Se você estiver enfrentando problemas de memória, por exemplo, ao carregar uma solução grande em uma máquina de 4 GB ou alto uso da CPU para esse processo, você pode desativar o CodeLens para liberar recursos.
Para desativar CodeLens, escolha Ferramentas>Opções>Editor de Texto>Todos os Idiomas>CodeLense desmarque o recurso.
Para obter mais informações, consulte Encontre alterações de código e outro histórico com o CodeLens.
Outras ferramentas e extensões
Desativar extensões
As extensões são componentes de software adicionais adicionados ao Visual Studio que fornecem nova funcionalidade ou estendem a funcionalidade existente. Muitas vezes, as extensões podem ser uma fonte de problemas de recursos de memória. Se você estiver enfrentando problemas de recursos de memória, tente desativar as extensões uma de cada vez para ver como isso afeta o cenário ou o fluxo de trabalho.
Para desativar extensões, vá para Extensões>Gerenciar Extensõese desative uma extensão específica.
Desativar o modo de mapa
modo Mapa exibe linhas de código, em miniatura, na barra de rolagem. O modo de mapa está ativado por predefinição.
Para desativar o modo de mapa, vá para
Ferramentas Opções Editor de Texto Todos os Idiomas Barras de Rolagem e, na seção Comportamento, desmarque a opção Usar modo de mapa para barra de rolagem vertical. Desativar quebra automática de texto
de quebra automática do Word exibe a parte de uma longa linha de código que se estende além da largura atual da janela do editor de código. A quebra automática de texto está ativada por padrão.
Para desativar a quebra automática de texto para um projeto no qual você está trabalhando no momento, vá para Editar>Wrap Avançado>Word Wrap. (Você pode alternar essa configuração usando os mesmos comandos de menu.)
Para desativar a quebra automática de texto para todos os projetos, vá para
Ferramentas Opções Editor de Texto Geral Todos os Idiomas Geral e, na seção Configurações do , desmarque a opção quebra automática do Word. Desabilitar o Designer XAML
O designer XAML é habilitado por padrão, mas só consome recursos se você abrir um arquivo .xaml
. Se você trabalha com arquivos XAML, mas não deseja usar a funcionalidade de designer, desative esse recurso para liberar memória. Para desativar o Designer XAML, vá para Ferramentas
Opções Designer XAML Ativar Designer XAML e desmarque a opção.Remover cargas de trabalho
Você pode usar o instalador do Visual Studio para remover cargas de trabalho que não são mais usadas. Essa ação pode simplificar o custo de inicialização e tempo de execução ignorando pacotes e assemblies que não são mais necessários.
Adicionar ficheiros não rastreados ao .gitignore local
O Visual Studio executa o comando Git
git status
com arquivos não rastreados para fornecer uma experiência perfeita quando você adiciona novos arquivos a um repositório. Quando há um grande número de arquivos não rastreados,git status
pode consumir memória extra. Para ignorar esses arquivos e melhorar o desempenho dogit status
, você pode adicionar esses arquivos ou pastas ao seu arquivo .gitignore local. Para aceder ao arquivo, vá para >Configurações do Git>Configurações do repositório Git. Em seguida, na secção de ficheiros Git, selecione Adicionar para criar um ficheiro .gitignore, ou selecione Editar se já tiver um ficheiro .gitignore.Ativar gráfico de commits nas ferramentas Git
Novo no Visual Studio 2022 versão 17.2: Se você estiver enfrentando atrasos ao exibir seu repositório Git ou histórico de ramificações no Visual Studio, integramos um recurso de "gráfico de confirmação" que pode ajudar. Para usar o gráfico de confirmação, certifique-se de baixar e instalar o Visual Studio 2022. Para saber mais sobre o gráfico de confirmação, consulte o post de blogue Amplifique a sua experiência com o Git no Visual Studio.
Forçar uma recolha de lixo
O CLR usa um sistema de gerenciamento de memória de coleta de lixo. Neste sistema, às vezes a memória é usada por objetos que não são mais necessários. Este estado é temporário; O coletor de lixo libera essa memória com base em sua heurística de desempenho e uso de recursos. Você pode forçar o CLR para coletar qualquer memória não utilizada usando uma tecla de atalho no Visual Studio. Se houver uma quantidade significativa de lixo aguardando a coleta e você forçar uma coleta de lixo, você verá o uso de memória do processo de devenv.exe cair em Gerenciador de Tarefas. Raramente é necessário usar este método. No entanto, depois que uma operação cara for concluída (como uma compilação completa, sessão de depuração ou um evento aberto de solução), ela pode ajudá-lo a determinar quanta memória está realmente sendo usada pelo processo. Como o Visual Studio é misto (gerenciado & nativo), ocasionalmente é possível que o alocador nativo e o coletor de lixo compitam por recursos de memória limitados. Em condições de alto uso de memória, pode ajudar a forçar o coletor de lixo a funcionar.
Para forçar uma recolha de lixo, utilize este atalho de teclado: Ctrl+Alt+Shift+F12Ctrl+Alt+Shift+F12 (prima duas vezes).
Se forçar a coleta de lixo de forma confiável fizer o seu cenário funcionar, envie um relatório através da ferramenta de feedback do Visual Studio, pois esse comportamento provavelmente será um bug.
Para obter uma descrição detalhada do coletor de lixo CLR, consulte Fundamentos da coleta de lixo.