.NET 4.5 dan C# 5 Rangka kerja memperkenalkan mode moden/menunggu mod pengaturcaraan asynchronous. Kedua -duanya digunakan untuk mengendalikan tugas operasi panjang, tetapi memahami peranan masing -masing dan adegan yang terpakai adalah penting.
async/menunggu adalah gula sintaks tak segerak, yang membolehkan pemaju untuk menyatakan tingkah laku tak segerak secara serentak, dengan itu memudahkan pembacaan dan penyelenggaraan kod. Fungsi async/menunggu boleh dilaksanakan tanpa menyekat benang UI, untuk mengekalkan keupayaan tindak balas antara muka pengguna semasa tempoh tugas panjang. Sebagai contoh, permintaan rangkaian:
Latar Belakang Backer
<code class="language-csharp">using (WebResponse response = await webReq.GetResponseAsync()) { using (Stream responseStream = response.GetResponseStream()) { int bytesRead = await responseStream.ReadAsync(buffer, 0, buffer.Length); } }</code>
Walaupun penciptaan dan pelaksanaan benang yang diuruskan oleh Latar Belakang, ia memperkenalkan kerumitan tambahan berbanding dengan sintaks Async/Await yang lebih mudah.
senario aplikasi biasa
operasi I/O Asynchronous panggilan perkhidmatan web
pengaturcaraan acara adegan yang memerlukan keupayaan tindak balas UI
Kelebihan perbandingan
pemprosesan acara mudah
Latar Belakang Kerja:menyediakan laporan kemajuan
Pilihan async/menunggu dan pekerja latar belakang bergantung kepada keperluan khusus tugas.
Atas ialah kandungan terperinci Async/menunggu vs latar belakang pekerja: Bilakah saya harus menggunakan yang mana untuk tugas-tugas jangka panjang dalam .net?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!