# Otimização de desempenho (.NET) > Profiling, BenchmarkDotNet, memory allocation, boxing/unboxing, Span, melhores práticas de desempenho - 22 perguntas de entrevista - Senior - [Perguntas de entrevista: .NET](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista.md) ## 1. Qual é a principal vantagem do BenchmarkDotNet em relação a um simples Stopwatch para medir o desempenho? **Resposta** O BenchmarkDotNet realiza warm-ups, mede várias iterações com estabilização estatística e evita os vieses do JIT e do GC. Um Stopwatch simples pode dar resultados não representativos porque não controla esses fatores. O BenchmarkDotNet também fornece métricas detalhadas como as alocações de memória por operação. ## 2. Qual ferramenta da Microsoft é recomendada para analisar as alocações de memória e identificar vazamentos de memória em produção? **Resposta** O dotMemory da JetBrains e o PerfView da Microsoft são as ferramentas recomendadas para fazer profiling de memória no .NET. O PerfView é gratuito, open-source e pode analisar heap allocations, stack traces e eventos do GC. É especialmente adequado para diagnosticar vazamentos de memória em produção sem overhead significativo. ## 3. Como identificar as alocações de memória ocultas em um método LINQ como FirstOrDefault()? **Resposta** Usar o BenchmarkDotNet com o atributo MemoryDiagnoser permite ver as alocações por operação. As lambdas do LINQ criam alocações ocultas via delegates. Substituí-las por um simples loop foreach elimina essas alocações. O PerfView também pode capturar os stack traces de alocações para identificar as fontes. ## Mais 19 perguntas disponiveis - No BenchmarkDotNet, qual atributo usar para medir o desempenho de CPU e identificar os hotspots de código? - Como interpretar um resultado do BenchmarkDotNet mostrando Mean: 125.3 ns, StdDev: 45.2 ns? Cadastre-se gratis: https://sharpskill.dev/pt/login ## Outros temas de entrevista .NET - [Fundamentos de C#](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/csharp-basics.md): 25 perguntas, Junior - [LINQ & Delegates](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/csharp-linq-delegates.md): 20 perguntas, Junior - [Fundamentos da linguagem C#](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/csharp-language-essentials.md): 15 perguntas, Junior - [Fundamentos do ASP.NET Core](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/aspnet-core-fundamentals.md): 18 perguntas, Junior - [Ciclo de vida das requisições no ASP.NET Core](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/aspnet-core-request-lifecycle.md): 20 perguntas, Junior - [Configuration & Settings](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/configuration-settings.md): 20 perguntas, Junior - [Ciclo de vida da aplicação](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/application-lifecycle.md): 20 perguntas, Junior - [Dependency Injection](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/dependency-injection.md): 24 perguntas, Mid-Level - [Entity Framework Core](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/entity-framework-core.md): 25 perguntas, Mid-Level - [Minimal APIs](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/minimal-apis.md): 18 perguntas, Mid-Level - [Desenvolvimento de Web API](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/web-api-development.md): 22 perguntas, Mid-Level - [Async no ASP.NET Core](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/async-aspnet-core.md): 20 perguntas, Mid-Level - [Authentication & Authorization](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/authentication-authorization.md): 18 perguntas, Mid-Level - [HttpClient & Networking](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/httpclient-networking.md): 20 perguntas, Mid-Level - [Serialização JSON](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/json-serialization.md): 20 perguntas, Mid-Level - [Entity Framework Core avançado](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/ef-core-advanced.md): 25 perguntas, Mid-Level - [Recursos avançados do C#](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/csharp-advanced-features.md): 20 perguntas, Mid-Level - [Clean Architecture](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/clean-architecture.md): 20 perguntas, Mid-Level - [Logging, Monitoring & Observability](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/logging-monitoring.md): 22 perguntas, Mid-Level - [Testes unitários e xUnit](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/unit-testing-xunit.md): 20 perguntas, Mid-Level - [Testes de integração](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/integration-testing.md): 18 perguntas, Mid-Level - [Docker & Containerization](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/docker-containerization.md): 16 perguntas, Mid-Level - [NuGet Package Management](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/nuget-package-management.md): 16 perguntas, Mid-Level - [Memory Management & GC](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/memory-management-gc.md): 22 perguntas, Senior - [Programação reativa](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/reactive-programming.md): 24 perguntas, Senior - [Async/await & Patterns](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/async-await-patterns.md): 26 perguntas, Senior - [.NET Design Patterns](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/dotnet-design-patterns.md): 24 perguntas, Senior - [Segurança e Best Practices](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/security-best-practices.md): 24 perguntas, Senior - [SignalR e tempo real](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/signalr-realtime.md): 22 perguntas, Senior - [Arquitetura de Microsserviços](https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/microservices-architecture.md): 25 perguntas, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/pt/technologies/dotnet/perguntas-entrevista/performance-optimization