# Async/await & Pola (.NET) > async/await, Task, ValueTask, ConfigureAwait, cancellation token, eksekusi paralel, deadlock - 26 pertanyaan wawancara - Senior - [Pertanyaan Wawancara: .NET](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara.md) ## 1. Apa peran utama kata kunci 'await' dalam metode asinkron? **Jawaban** Kata kunci await menangguhkan eksekusi metode asinkron hingga Task selesai, sekaligus membebaskan thread pemanggil agar dapat memproses tugas lain. Hal ini menghindari pemblokiran thread dan meningkatkan skalabilitas aplikasi. Tidak seperti Task.Wait() atau Task.Result yang memblokir thread, await memungkinkan penggunaan sumber daya thread pool secara efisien. ## 2. Mengapa async void harus dihindari kecuali untuk event handler? **Jawaban** Metode async void tidak dapat di-await dan exception yang dilempar di dalamnya tidak dapat ditangkap oleh kode pemanggil, menyebabkan aplikasi crash. Selain itu, melakukan unit testing pada metode async void tidak mungkin karena tidak ada Task untuk di-await. Event handler adalah pengecualian karena dipanggil oleh framework dan tidak dapat mengembalikan Task. ## 3. Dalam kasus penggunaan apa ValueTask harus lebih dipilih daripada Task? **Jawaban** ValueTask adalah value type yang menghindari alokasi heap ketika hasilnya sudah tersedia secara sinkron, seperti pada cache. Hal ini mengurangi tekanan pada garbage collector dalam skenario performa tinggi. Task selalu dialokasikan di heap meskipun hasilnya sinkron. Gunakan ValueTask hanya ketika peningkatan performa dapat diukur, karena penggunaan yang tidak tepat dapat menurunkan performa. ## 23 pertanyaan lagi tersedia - Batasan penting apa yang berlaku untuk ValueTask dibandingkan dengan Task? - Apa tujuan utama ConfigureAwait(false) dalam library .NET? Daftar gratis: https://sharpskill.dev/id/login ## Topik wawancara .NET lainnya - [Dasar-Dasar C#](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/csharp-basics.md): 25 pertanyaan, Junior - [LINQ & Delegates](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/csharp-linq-delegates.md): 20 pertanyaan, Junior - [Esensi Bahasa C#](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/csharp-language-essentials.md): 15 pertanyaan, Junior - [Dasar-Dasar ASP.NET Core](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/aspnet-core-fundamentals.md): 18 pertanyaan, Junior - [Siklus Hidup Request ASP.NET Core](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/aspnet-core-request-lifecycle.md): 20 pertanyaan, Junior - [Configuration & Settings](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/configuration-settings.md): 20 pertanyaan, Junior - [Siklus Hidup Aplikasi](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/application-lifecycle.md): 20 pertanyaan, Junior - [Dependency Injection](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/dependency-injection.md): 24 pertanyaan, Mid-Level - [Entity Framework Core](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/entity-framework-core.md): 25 pertanyaan, Mid-Level - [Minimal APIs](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/minimal-apis.md): 18 pertanyaan, Mid-Level - [Pengembangan Web API](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/web-api-development.md): 22 pertanyaan, Mid-Level - [Async di ASP.NET Core](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/async-aspnet-core.md): 20 pertanyaan, Mid-Level - [Authentication & Authorization](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/authentication-authorization.md): 18 pertanyaan, Mid-Level - [HttpClient & Networking](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/httpclient-networking.md): 20 pertanyaan, Mid-Level - [Serialisasi JSON](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/json-serialization.md): 20 pertanyaan, Mid-Level - [Entity Framework Core Tingkat Lanjut](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/ef-core-advanced.md): 25 pertanyaan, Mid-Level - [Fitur Lanjutan C#](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/csharp-advanced-features.md): 20 pertanyaan, Mid-Level - [Clean Architecture](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/clean-architecture.md): 20 pertanyaan, Mid-Level - [Logging, Monitoring & Observability](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/logging-monitoring.md): 22 pertanyaan, Mid-Level - [Unit Testing & xUnit](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/unit-testing-xunit.md): 20 pertanyaan, Mid-Level - [Pengujian Integrasi](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/integration-testing.md): 18 pertanyaan, Mid-Level - [Docker & Containerization](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/docker-containerization.md): 16 pertanyaan, Mid-Level - [Manajemen Paket NuGet](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/nuget-package-management.md): 16 pertanyaan, Mid-Level - [Memory Management & GC](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/memory-management-gc.md): 22 pertanyaan, Senior - [Pemrograman reaktif](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/reactive-programming.md): 24 pertanyaan, Senior - [.NET Design Patterns](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/dotnet-design-patterns.md): 24 pertanyaan, Senior - [Optimasi Performa](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/performance-optimization.md): 22 pertanyaan, Senior - [Keamanan & Best Practices](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/security-best-practices.md): 24 pertanyaan, Senior - [SignalR & Real-time](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/signalr-realtime.md): 22 pertanyaan, Senior - [Arsitektur Microservices](https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/microservices-architecture.md): 25 pertanyaan, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/id/technologies/dotnet/pertanyaan-wawancara/async-await-patterns