# Async in ASP.NET Core (.NET) > async/await nei controller, CancellationToken, streaming responses, timeout, async filter, IAsyncEnumerable - 20 domande da colloquio - Mid-Level - [Domande da colloquio: .NET](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio.md) ## 1. Perché usare async/await nelle action dei controller ASP.NET Core? **Risposta** L'uso di async/await nei controller libera i thread del thread pool durante le operazioni I/O (database, API esterne). Questo migliora la scalabilità del server consentendo al thread di elaborare altre richieste durante l'attesa. Senza async, il thread rimane bloccato e consuma risorse inutilmente, limitando il numero di richieste concorrenti. ## 2. Cosa succede se una action di un controller restituisce Task senza usare async/await? **Risposta** Restituire Task senza async/await funziona se restituisci direttamente una Task esistente (return dbContext.SaveChangesAsync();). Tuttavia, senza la parola chiave async, non puoi usare await nel corpo del metodo. Nella maggior parte dei casi, usare async consente di attendere più operazioni asincrone e gestire gli errori con try/catch. ## 3. Qual è la differenza tra ToList() e ToListAsync() in una action di un controller? **Risposta** ToList() è sincrono e blocca il thread durante la query al database, limitando la scalabilità. ToListAsync() è asincrono e libera il thread durante l'operazione I/O, consentendo al server di elaborare altre richieste. Usa sempre ToListAsync() nei controller per massimizzare il numero di richieste concorrenti supportate. ## Altre 17 domande disponibili - Qual è il ruolo del CancellationToken nelle action dei controller? - Come ottenere il CancellationToken in una action di un controller ASP.NET Core? Registrati gratis: https://sharpskill.dev/it/login ## Altri argomenti di colloquio .NET - [Fondamenti di C#](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/csharp-basics.md): 25 domande, Junior - [LINQ & Delegates](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/csharp-linq-delegates.md): 20 domande, Junior - [Fondamenti del linguaggio C#](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/csharp-language-essentials.md): 15 domande, Junior - [Fondamenti di ASP.NET Core](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/aspnet-core-fundamentals.md): 18 domande, Junior - [Ciclo di vita delle richieste in ASP.NET Core](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/aspnet-core-request-lifecycle.md): 20 domande, Junior - [Configuration & Settings](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/configuration-settings.md): 20 domande, Junior - [Ciclo di vita dell'applicazione](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/application-lifecycle.md): 20 domande, Junior - [Dependency Injection](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/dependency-injection.md): 24 domande, Mid-Level - [Entity Framework Core](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/entity-framework-core.md): 25 domande, Mid-Level - [Minimal APIs](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/minimal-apis.md): 18 domande, Mid-Level - [Sviluppo di Web API](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/web-api-development.md): 22 domande, Mid-Level - [Authentication & Authorization](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/authentication-authorization.md): 18 domande, Mid-Level - [HttpClient & Networking](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/httpclient-networking.md): 20 domande, Mid-Level - [Serializzazione JSON](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/json-serialization.md): 20 domande, Mid-Level - [Entity Framework Core avanzato](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/ef-core-advanced.md): 25 domande, Mid-Level - [Funzionalità avanzate di C#](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/csharp-advanced-features.md): 20 domande, Mid-Level - [Clean Architecture](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/clean-architecture.md): 20 domande, Mid-Level - [Logging, Monitoring & Observability](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/logging-monitoring.md): 22 domande, Mid-Level - [Test unitari & xUnit](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/unit-testing-xunit.md): 20 domande, Mid-Level - [Test di integrazione](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/integration-testing.md): 18 domande, Mid-Level - [Docker & Containerization](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/docker-containerization.md): 16 domande, Mid-Level - [Gestione dei pacchetti NuGet](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/nuget-package-management.md): 16 domande, Mid-Level - [Memory Management & GC](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/memory-management-gc.md): 22 domande, Senior - [Programmazione reattiva](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/reactive-programming.md): 24 domande, Senior - [Async/await & Pattern](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/async-await-patterns.md): 26 domande, Senior - [.NET Design Patterns](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/dotnet-design-patterns.md): 24 domande, Senior - [Ottimizzazione delle prestazioni](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/performance-optimization.md): 22 domande, Senior - [Sicurezza e Best Practices](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/security-best-practices.md): 24 domande, Senior - [SignalR e tempo reale](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/signalr-realtime.md): 22 domande, Senior - [Architettura a Microservizi](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/microservices-architecture.md): 25 domande, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/async-aspnet-core