Async dan Await: Bekerja dengan Kod Tak Segerak
Kuasai pengaturcaraan tak segerak untuk membina aplikasi responsif
Async dan Await: Bekerja dengan Kod Tak Segerak ialah pelajaran Akademi C# percuma di CoddyKit. Ini ialah pelajaran 2 daripada 5. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Akademi C#, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Akademi C# merangkumi sejumlah 5 pelajaran.
Pengenalan kepada async dan await
Async dan Await: Bekerja dengan Kod Tak Segerak
Selamat datang ke pelajaran seterusnya! Dalam pelajaran ini, anda akan mempelajari cara menggunakan async dan await dalam C# untuk menulis kod tak segerak yang meningkatkan responsif dan prestasi aplikasi. Mari mulakan!

Apakah Pengaturcaraan Tak Segerak?
Pengaturcaraan tak segerak membolehkan tugas berjalan secara bebas tanpa menyekat utas utama. Ini amat berguna untuk tugas seperti membaca fail, mendapatkan data daripada Internet atau berinteraksi dengan pangkalan data.
Perkara utama: Kod tak segerak meningkatkan responsif aplikasi, khususnya dalam aplikasi antara muka pengguna dan pelayan.
Memahami Async dan Await
Async dan await ialah kata kunci dalam C# yang memudahkan pengaturcaraan tak segerak:
- async: Menandakan kaedah sebagai tak segerak.
- await: Menjeda pelaksanaan kaedah sehingga tugas yang ditunggu selesai.
Perkara utama: Kaedah async sentiasa mengembalikan Task atau Task<T>.
Mencipta Kaedah Tak Segerak
Mari cipta kaedah tak segerak untuk mensimulasikan tugas yang mengambil masa lama. Contoh:
Petua: Gunakan Task.Delay() untuk mensimulasikan kelewatan dalam operasi tak segerak.
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 daripada Kaedah Tak Segerak
Kaedah async boleh 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;
}
}
Mengendalikan Pengecualian dalam Kod Tak Segerak
Gunakan try-catch untuk mengendalikan pengecualian dalam kaedah tak segerak. 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));
}
}
Cabaran Latihan
Cipta kaedah tak segerak yang mendapatkan data daripada URL dan memaparkan kandungannya. 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);
}
}
Amalan Terbaik untuk Pengaturcaraan Tak Segerak
Berikut ialah beberapa amalan terbaik:
- Gunakan
asyncdanawaituntuk tugas yang melibatkan operasi input/output atau pengiraan yang mengambil masa lama. - Elakkan menyekat kod tak segerak dengan
.Resultatau.Wait(). - Kendalikan pengecualian untuk mengelakkan ralat yang tidak dikendalikan.
- Gunakan
ConfigureAwait(false)dalam kod pustaka untuk mengelakkan kebuntuan.
Petua: Pastikan kaedah async anda ringkas dan tertumpu pada satu tanggungjawab.
Syabas!
Tahniah! Anda telah mempelajari cara menggunakan async dan await untuk menulis kod tak segerak dalam C#. Dalam pelajaran seterusnya, kita akan meneroka pengutasan dan tugas untuk pengaturcaraan selari. Mari terus menulis kod!
Klik Teruskan untuk beralih ke pelajaran seterusnya.

Pelajari C# dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 93
- Pelajaran
- 346
Soalan Lazim
Adakah pelajaran “Async dan Await: Bekerja dengan Kod Tak Segerak” percuma?
Ya — teks penuh “Async dan Await: Bekerja dengan Kod Tak Segerak” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Akademi C#, tingkat taraf kepada CoddyKit PRO. Kursus Akademi C# merangkumi sejumlah 5 pelajaran.
Apakah yang akan saya pelajari dalam “Async dan Await: Bekerja dengan Kod Tak Segerak”?
Kuasai pengaturcaraan tak segerak untuk membina aplikasi responsif Anda berlatih Akademi C# menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Akademi C#?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Akademi C# di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 5.
Berapa lamakah pelajaran “Async dan Await: Bekerja dengan Kod Tak Segerak” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Akademi C# ini?
Ya. Setiap pelajaran Akademi C# menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Generik dalam C#
- Async dan Await: Bekerja dengan Kod Tak Segerak
- Memahami Penjalinan dan Tugasan
- Meneroka Delegat dan Lambda
- Memahami Refleksi dalam C#