async
และawait
คำหลักที่จะไม่ทำให้ใบสมัครของคุณตอบสนองมากขึ้นได้ด้วยตัวเอง พวกเขาเพียงแค่ทำการโทรและจัดการกับวิธีการที่ทำให้Task
วัตถุกลับมามีความสะดวกมากขึ้น ในการสร้างasync
/ await
ใช้เธรดพื้นหลังจริง ๆ คุณจะต้องรวมกับการใช้สิ่งต่าง ๆ เช่น:
Task.Start()
- TaskScheduler
เริ่มต้นเป็นงานที่ได้รับใช้
- PLINQ - ดำเนินการชุดของการดำเนินการแบบขนานส่งคืนงาน
TaskCompletionSource
- วิธีการที่กำหนดเองเพื่อจัดการงาน async ที่เดียวที่ฉันใช้นี่คือจัดการกับเหตุการณ์ที่เกิดขึ้นจากการWebBrowser
ควบคุม
async
วิธีการอื่นเช่นฟังก์ชั่นมากมายใน Win 8 API
กล่าวอีกนัยหนึ่งasync
/ await
เป็นส่วนขยายของรูปแบบอะซิงโครนัสตามงาน คุณสามารถหาพื้นที่ขนาดใหญ่ของข้อมูลรวมถึงตัวอย่างมากมายที่นี่
BackgroundWorker
เป็นองค์ประกอบ WinForms ที่สร้างด้ายพื้นหลัง 1 โดยใช้รูปแบบการจัดกิจกรรมตาม Asynchronousและคุณสามารถเติมงานที่ทำในหัวข้อพื้นหลังนี้ด้วยรหัสของคุณเองในDoWork
ตัวจัดการเหตุการณ์ โดยทั่วไปแล้วMicrosoft ไม่แนะนำให้ใช้รูปแบบนี้อีกต่อไป (ดูที่ด้านล่างของหน้าเว็บที่นี่ ) แม้ว่าคุณจะคุ้นเคยกับมันแล้ว แต่ก็อาจเป็นตัวเลือกที่ง่าย
อีกตัวเลือกหนึ่งไม่ได้กล่าวถึงเป็นปฏิกิริยาส่วนขยายสำหรับ NET นี่เป็นอีกหนึ่งกรอบการทำงานที่ยอดเยี่ยมสำหรับการเพิ่มการตอบสนองต่อแอพของคุณ