فرض کنید می خواهیم اطلاعاتی را دانلود کرده و سپس به پردازش و تحلیل آنها بپردازیم. در حالت برنامه نوسی همزمان، با فراخوانی توابع DownloadData و ProcessData سناریوی ما را پیاده سازی می شود. همانطور که مشخص است داده های دانلود شده درقالب متغیر data به عنوان آرگومان به تابع ProcessData فرستاده می شوند. اجرای برنامه تا زمان دانلود کامل data منتظر خواهد ماند. پس از اتمام دانلود داده ها، اجرای ProcessData آغاز می شود. این روند برنامه نویسی همزمان می باشد. یعنی اجرای برنامه تا قبل از اتمام کامل یک تابع نمی تواند ادامه پیدا کند و سراغ تابع دیگری برود. در برنامه نویسی غیرهمزمان سناریوی بالا به گونه ای دیگر پیش می رود. دانلود داده ها را به تابعی به نام DownloadDataAsync واگذار کرده ایم، تابع ProcessData به عنوان یک آرگومان (delegate) از این تابع در نظر گرفته شده است. انتظار داریم که با انجام این فراخوانی، اجرای برنامه ادامه پیدا کند و زمانی که عمل دانلود کامل شد تابع ProcessData فراخوانی شود. پس از فراخوانی تابع DownloadDataAsync، پردازش های دیگری انجام شده و با اتمام دانلود داده ها، فراخوانی ProcessData آغاز می شود.
در دوره آموزشی informit C# Async Fundamentals با اصول و مبانی برنامه نویسی غیرهمزمان آشنا می شوید.
سرفصل های دوره آموزشی informit C# Async Fundamentals:
درس ۱: مروری بر سینتکس و مدل برنامه نویسی
درس ۲: همزمان در مقابل غیرهمزمان
درس ۳: غیرهمزمان
درس ۴: وظایف سری غیرهمزمان
درس ۵: تست واحد
درس ۶: تمرین
چند نما از دوره آموزشی informit C# Async Fundamentals :
این دوره آموزشی بنا به درخواست شما در اختیارتان قرار گرفت تا از آن بهره مند شوید.