คีย์เวิร์ด async และ await ใช้ใน C# สำหรับการเขียนโปรแกรมแบบอะซิงโครนัส
แอปพลิเคชันที่มี GUI ตรวจสอบเนื้อหาของคิว และหากมีงานที่ยังไม่ได้ดำเนินการ ให้นำออกและประมวลผลก่อน รหัสดำเนินการพร้อมกันและงานที่ยังไม่ได้ดำเนินการจะเสร็จสิ้นก่อน แอปพลิเคชันจะแสดงการหยุดตอบสนองต่อข้อความหากการประมวลผลใช้เวลานานกว่าที่คาดไว้
ให้เราดูสิ่งที่กล่าวถึงข้างต้น −
private void OnRequestDownload(object sender, RoutedEventArgs e) { var req = HttpWebRequest.Create(_requestedUri); var res = req.GetResponse(); }
เพื่อแก้ปัญหาข้างต้น ใช้ async และรอคำสำคัญ -
private async void OnRequestDownload(object sender, RoutedEventArgs e) { var req= HttpWebRequest.Create(_requestedUri); var res = await req.GetResponseAsync(); }