Async dan Await: Bekerja dengan Kode Asinkron
Kuasai pemrograman asinkron untuk membuat aplikasi yang responsif
Async dan Await: Bekerja dengan Kode Asinkron adalah pelajaran C# Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 5. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar C# Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus C# Academy mencakup 5 pelajaran total.
Pengenalan Asinkron dan Penantian
Asinkron dan Menunggu: Bekerja dengan Kode Asinkron
Selamat datang di pelajaran berikutnya! Dalam pelajaran ini, Anda akan mempelajari cara menggunakan async dan await dalam C# untuk menulis kode asinkron yang meningkatkan responsivitas dan kinerja aplikasi. Mari mulai!

Apa Itu Pemrograman Asinkron
Apa Itu Pemrograman Asinkron?
Pemrograman asinkron memungkinkan tugas berjalan secara mandiri tanpa memblokir utas utama. Hal ini sangat berguna untuk tugas seperti membaca berkas, mengambil data dari internet, atau berinteraksi dengan basis data.
Poin Utama: Kode asinkron meningkatkan responsivitas aplikasi, terutama pada aplikasi antarmuka pengguna dan server.
Memahami Asinkron dan Penantian
Memahami Asinkron dan Penantian
Asinkron dan menunggu adalah kata kunci dalam C# yang menyederhanakan pemrograman asinkron:
- async: Menandai metode sebagai asinkron.
- menunggu: Menjeda eksekusi metode hingga tugas yang ditunggu selesai.
Poin Utama: Metode asinkron selalu mengembalikan Task atau Task<T>.
Membuat Metode Asinkron
Membuat Metode Asinkron
Mari membuat metode asinkron untuk menyimulasikan tugas yang berjalan lama. Contoh:
Kiat: Gunakan Task.Delay() untuk menyimulasikan penundaan dalam operasi asinkron.
using System;
using System.Threading.Tasks;
class Program {
static async Task Main() {
Console.WriteLine("Starting task...");
await PerformTask();
Console.WriteLine("Task completed!");
}
static async Task PerformTask() {
await Task.Delay(3000); // Simulates a 3-second delay
Console.WriteLine("Task is running...");
}
}
Mengembalikan Nilai dari Metode Asinkron
Mengembalikan Nilai dari Metode Asinkron
Metode asinkron dapat mengembalikan nilai menggunakan Task<T>. Contoh:
using System;
using System.Threading.Tasks;
class Program {
static async Task Main() {
int result = await CalculateSumAsync(10, 20);
Console.WriteLine("Result: " + result);
}
static async Task<int> CalculateSumAsync(int a, int b) {
await Task.Delay(1000); // Simulates a delay
return a + b;
}
}
Menangani Pengecualian dalam Kode Asinkron
Menangani Pengecualian dalam Kode Asinkron
Gunakan try-catch untuk menangani pengecualian dalam metode asinkron. Contoh:
using System;
using System.Threading.Tasks;
class Program {
static async Task Main() {
try {
await DivideAsync(10, 0);
} catch (Exception ex) {
Console.WriteLine("Error: " + ex.Message);
}
}
static async Task DivideAsync(int a, int b) {
await Task.Delay(1000);
if (b == 0) throw new DivideByZeroException("Cannot divide by zero.");
Console.WriteLine("Result: " + (a / b));
}
}
Tantangan Latihan
Tantangan Latihan
Buat metode asinkron yang mengambil data dari sebuah URL dan menampilkan isinya. Contoh:
using System;
using System.Net.Http;
using System.Threading.Tasks;
class Program {
static async Task Main() {
string url = "https://jsonplaceholder.typicode.com/todos/1";
string data = await FetchDataAsync(url);
Console.WriteLine("Data: " + data);
}
static async Task<string> FetchDataAsync(string url) {
using HttpClient client = new HttpClient();
return await client.GetStringAsync(url);
}
}
Praktik Terbaik untuk Pemrograman Asinkron
Praktik Terbaik untuk Pemrograman Asinkron
Berikut beberapa praktik terbaik:
- Gunakan
asyncdanawaituntuk tugas yang melibatkan operasi masukan/keluaran atau komputasi yang berjalan lama. - Hindari memblokir kode asinkron dengan
.Resultatau.Wait(). - Tangani pengecualian untuk mencegah kesalahan yang tidak tertangani.
- Gunakan
ConfigureAwait(false)dalam kode pustaka untuk menghindari kebuntuan.
Kiat: Buat metode asinkron Anda ringkas dan berfokus pada satu tanggung jawab.
Kerja bagus!
Kerja bagus!
Selamat! Anda telah mempelajari cara menggunakan async dan await untuk menulis kode asinkron dalam C#. Pada pelajaran berikutnya, kita akan menjelajahi penggunaan utas dan tugas untuk pemrograman paralel. Mari terus menulis kode!
Klik Lanjut untuk berpindah ke pelajaran berikutnya.

Pertanyaan yang Sering Diajukan
Apakah pelajaran “Async dan Await: Bekerja dengan Kode Asinkron” gratis?
Ya — teks lengkap “Async dan Await: Bekerja dengan Kode Asinkron” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus C# Academy, upgrade ke CoddyKit PRO. Kursus C# Academy mencakup 5 pelajaran total.
Apa yang akan aku pelajari di “Async dan Await: Bekerja dengan Kode Asinkron”?
Kuasai pemrograman asinkron untuk membuat aplikasi yang responsif Kamu berlatih C# Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai C# Academy?
Tidak diperlukan pengalaman sebelumnya. C# Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 5.
Berapa lama pelajaran “Async dan Await: Bekerja dengan Kode Asinkron” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran C# Academy ini?
Ya. Setiap pelajaran C# Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Generik dalam C#
- Async dan Await: Bekerja dengan Kode Asinkron
- Memahami Threading dan Tugas
- Menjelajahi Delegasi dan Lambda
- Memahami Refleksi dalam C#