آموزش برنامه نویسی غیر همزمان (Asynchronous) در سی شارپ


آموزش برنامه نویسی غیر همزمان (Asynchronous) در سی شارپ
برای خرید این درس نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.

یادگیری برنامه نویسی غیرهمزمان (Asynchronous) در زبان سی شارپ:

 

در جلسه قبل در مورد threadها صحبت کردیم. گفتیم که شما می‌توانید به کمک thread ها بخشی از فرآیندها را انجام دهید و این امکان به وجود می‌آید که وقتی شما چندین thread یا نخ دارید چندین فرآیند به صورت نسبتا همزمان یا همروند پیش روند وهمه چیز یک به یک اتفاق می‌افتد. وقتی تابعی را فراخوانی می‌کنید که یک عمل طولانی مدت را انجام می‌دهد، فقط هنگامی که عمل به پایان رسیده است باز می گردد و می‌تواند نتیجه را برگرداند. این برنامه شما را برای مدت زمان انجام عمل متوقف می‌کند.

 در این آموزش می‌خواهیم در مورد برنامه نویسی غیرهمزمان (Asynchronous) در زبان C# توضیح دهیم. این سبک برنامه نویسی از C# 0.5 به بعد اضافه شد و البته بسیار بسیار ساده تر و قابل فهم تر ازthread ها بود. معمولا  در پروژه های  بزرگ وقتی از چندین thread استفاده می‌کنیم مدیریت این thread ها برای ورودی به لحظات بحرانی برنامه سخت می‌شد. در برنامه نویسی همزمان، درخواست ها یکی پس از دیگری انجام می‌شود، این یک اشکال دارد که درخواست دوم فقط پس از پایان درخواست اول انجام می‌شود و کل زمان گرفته شده حداقل مجموع دو زمان پاسخ خواهد بود.

 

 اما در برنامه نویسی غیرهمزمان چندین اتفاق همزمان اتفاق میافتد. هنگامی که عملی را شروع می‌کنید، برنامه شما همچنان اجرا می‌شود. وقتی این کار به پایان رسید، برنامه مطلع می‌شود و به نتیجه دسترسی پیدا می‌کند. رشته دوم می‌تواند درخواست دوم را شروع کند و سپس هر دو رشته منتظر بازگشت نتایج خود هستند و پس از آن دوباره هماهنگ می شوند تا نتایج خود را ترکیب کنند.

 برنامه نویسی غیر همزمان با استفاده از دستورات async  و await پیاده سازی می‌شود. در واقع وقتی از acync استفاده می‌کنیم یعنی اینکه قراراست یک برنامه غیر همزمان بنویسیم و await به ما کمک می‌دهد که هرجا نیازاست که cpu باید روی یک thread یا نخ تمرکز کند یا اینکه نه اجازه دارد ادامه دهد و نیاز نیست تا پایان آن فرایند thread صبر کند.

 

برای یادگیری این مبحث مثال ها و نکته های متعددی را در فایل ویدئویی آورده ایم که با تهیه این درس و مشاهده ویدئو ها به طور کامل به این مبحث مسلط خواهید شد.

 

 

امیدواریم که این آموزش، برای شما دوستان درسمنی عزیز مفید باشد، درصورت سوال و یا مشکل می توانید به انجمن برنامه نویسان سی شارپ مراجعه کنید. پیشنهادات و انتقادات خود را در بخش نظرات برای ما ارسال کنید.smiley

انجمن برنامه نویسان سی شارپ

 


نظر بدهید

نشانی ایمیل شما منتشر نخواهد شد .
برای ارسال نظر نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.

مشخصات دوره


مدرس دوره : مهدی عباسی
تعداد جلسات 22 جلسه
مدت زمان 930 دقیقه
حجم دوره 5/59 گیگابایت
سطح مهارت پیشرفته
وضعیت دوره پایان یافته
تعداد دانشجویان 219
: میانگین امتیاز

300,000تومان
برای دسترسی به این دوره وارد یا عضو شوید.
مهدی عباسی
مهدی عباسی

درباره مدرس :

مدیر‌ عامل‌ شرکت آریا‌ نرم‌‌ افزار دارنده مدرک کارشناسی‌ ارشد مهندسی کامپیوتر 12‌ سال سابقه تدریس دروس کامپیوتر را در دانشگاههای دولتی، آزاد، پیام‌نور ملایر، شهیدشمسی‌پور تهران و تدریس برنامه‌نویسی در ... ر انیستیتو ایزایران، مجتمع فنی و موسسه راه‌آینده تهران دارا میباشد و تا به حال راهنمایی انجمنهای علمی دانشگاه و صدها پروژه دانشجویی را برعهده داشته است. تخصص اصلی: با داشتن گواهی‌نامه‌های معتبر تدریس از انیستیتو‌ ایزایران، راه آینده‌تهران و سازمان‌فنی‌حرفه‌ای، تدریس و آموزش‌ دروس کامپیوتر، ‌برنامه‌نویسی کامپیوتر و کلاسهای کنکور کارشناسی و کارشناسی‌ارشد میباشد.همچنین تجربه داوری و نظارت مسابقات برنامه‌نویسی کشوری‌ACM را در سالهای متعدد داشته و تیم مورد رهبری ایشان در 3سال متوالی مقام اول مسابقات کشوری را از آن خود کرده است.ایشان مقالاتی در زمینه شبکه‌های کامپیوتری، تکنیک‌های وزارت دفاع و ... به ثبت رسانده و مشاور و کارشناس در طراحی و برنامه نویسی بیش از 50‌برنامه کاربردی تحت وب و ویندوز و موبایل میباشد. افتخارات دیگر:کسب مقام دوم ایده‌های برتر در مسابقات استارت‌آپ و بکند کشوری را نام برد.بیشتر بدانید