# Async w ASP.NET Core (.NET) > async/await w kontrolerach, CancellationToken, streaming responses, timeouty, async filtry, IAsyncEnumerable - 20 pytań z rozmów - Mid-Level - [Pytania z rozmów: .NET](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne.md) ## 1. Dlaczego warto używać async/await w akcjach kontrolerów ASP.NET Core? **Odpowiedź** Użycie async/await w kontrolerach zwalnia wątki z thread pool podczas operacji I/O (baza danych, zewnętrzne API). Poprawia to skalowalność serwera, pozwalając wątkowi obsługiwać inne żądania podczas oczekiwania. Bez async wątek pozostaje zablokowany i niepotrzebnie zużywa zasoby, ograniczając liczbę równoczesnych żądań. ## 2. Co się dzieje, gdy akcja kontrolera zwraca Task bez użycia async/await? **Odpowiedź** Zwracanie Task bez async/await działa, jeśli bezpośrednio zwracasz istniejące Task (return dbContext.SaveChangesAsync();). Jednak bez słowa kluczowego async nie można używać await w ciele metody. Najczęściej użycie async pozwala oczekiwać na wiele operacji asynchronicznych i obsługiwać błędy za pomocą try/catch. ## 3. Jaka jest różnica między ToList() a ToListAsync() w akcji kontrolera? **Odpowiedź** ToList() jest synchroniczny i blokuje wątek podczas zapytania do bazy danych, ograniczając skalowalność. ToListAsync() jest asynchroniczny i zwalnia wątek podczas operacji I/O, pozwalając serwerowi obsługiwać inne żądania. Zawsze używaj ToListAsync() w kontrolerach, aby zmaksymalizować liczbę obsługiwanych równoczesnych żądań. ## Jeszcze 17 dostępnych pytań - Jaka jest rola CancellationToken w akcjach kontrolerów? - Jak uzyskać CancellationToken w akcji kontrolera ASP.NET Core? Zarejestruj się za darmo: https://sharpskill.dev/pl/login ## Inne tematy rekrutacyjne .NET - [Podstawy C#](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/csharp-basics.md): 25 pytań, Junior - [LINQ & Delegates](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/csharp-linq-delegates.md): 20 pytań, Junior - [Podstawy języka C#](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/csharp-language-essentials.md): 15 pytań, Junior - [Podstawy ASP.NET Core](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/aspnet-core-fundamentals.md): 18 pytań, Junior - [Cykl życia żądania w ASP.NET Core](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/aspnet-core-request-lifecycle.md): 20 pytań, Junior - [Configuration & Settings](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/configuration-settings.md): 20 pytań, Junior - [Cykl życia aplikacji](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/application-lifecycle.md): 20 pytań, Junior - [Dependency Injection](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/dependency-injection.md): 24 pytań, Mid-Level - [Entity Framework Core](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/entity-framework-core.md): 25 pytań, Mid-Level - [Minimal APIs](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/minimal-apis.md): 18 pytań, Mid-Level - [Tworzenie Web API](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/web-api-development.md): 22 pytań, Mid-Level - [Authentication & Authorization](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/authentication-authorization.md): 18 pytań, Mid-Level - [HttpClient & Networking](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/httpclient-networking.md): 20 pytań, Mid-Level - [Serializacja JSON](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/json-serialization.md): 20 pytań, Mid-Level - [Entity Framework Core zaawansowany](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/ef-core-advanced.md): 25 pytań, Mid-Level - [Zaawansowane funkcje C#](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/csharp-advanced-features.md): 20 pytań, Mid-Level - [Clean Architecture](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/clean-architecture.md): 20 pytań, Mid-Level - [Logging, Monitoring & Observability](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/logging-monitoring.md): 22 pytań, Mid-Level - [Testy jednostkowe & xUnit](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/unit-testing-xunit.md): 20 pytań, Mid-Level - [Testy integracyjne](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/integration-testing.md): 18 pytań, Mid-Level - [Docker & Containerization](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/docker-containerization.md): 16 pytań, Mid-Level - [Zarządzanie pakietami NuGet](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/nuget-package-management.md): 16 pytań, Mid-Level - [Memory Management & GC](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/memory-management-gc.md): 22 pytań, Senior - [Programowanie reaktywne](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/reactive-programming.md): 24 pytań, Senior - [Async/await i wzorce](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/async-await-patterns.md): 26 pytań, Senior - [.NET Design Patterns](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/dotnet-design-patterns.md): 24 pytań, Senior - [Optymalizacja wydajności](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/performance-optimization.md): 22 pytań, Senior - [Bezpieczeństwo i Best Practices](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/security-best-practices.md): 24 pytań, Senior - [SignalR i czas rzeczywisty](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/signalr-realtime.md): 22 pytań, Senior - [Architektura Mikroserwisów](https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/microservices-architecture.md): 25 pytań, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/pl/technologies/dotnet/pytania-rekrutacyjne/async-aspnet-core