آموزش ماژول asyncio

Please login to bookmark Close

Asynchronous Programming یک نوع برنامه‌نویسی است که به کمک آن چند تسک را به صورت همزمان (نه موازی) در یک thread انجام می‌دهیم. این نوع برنامه‌نویسی برای پردازش تسک‌های CPU Bound اصلا توصیه نمی‌شود و برای انجام تسک‌های IO Bound بسیار عالی است.

مثال – امور روزمره

فرض کنید از یک فروشگاه اینترنتی یک کالا می‌خرید. سپس یک بسته با پست برای دوستتان در شهری دیگر ارسال می‌کنید. سپس لباس‌هایی که شسته اید را در آفتاب پهن می‌کنید تا خشک شوند.

گاهی وضعیت خرید خود را در سایت فروشگاه اینترنتی چک می‌کنید. گاهی وضعیت بسته‌ای که ارسال کرده اید را چک می‌کنید و گاهی به لباس‌ها سر می‌زنید تا مطمئن شوید که خشک شده‌اند یا نه.

در این، اگر این ۳ کار را تسک‌های سیستم در نظر بگیریم، شما مانند یک event loop عمل می‌کنید که در یک thread در حال اجراست از پایان یافتن تسک‌ها مطمئن شود.

اگر دقت کرده باشید، همه این کارها برای از نظر پردازشی کارهاس سختی نیستند، بلکه زمان زیادی برای انجام شدن نیاز دارند.

آیا امکان دارد شما یک صندلی بگذارید و جلوی لباس‌ها به انتظار بنشینید تا خشک شوند؟ انجام دادن تسک‌های IO Bound با multiprocessing به همین اندازه احمقانه است.

Please login to bookmark Close
نظرات

دیدگاهتان را بنویسید

فهرست مطالب

سرفصل دوره

تمرین

این قسمت تمرین ندارد!

پاسخ تمرین ها

هنوز برای تمرین‌های این قسمت پاسخی ثبت نشده است!

اشتراک گذاری

چرا بهتره از فیلترشکن استفاده کنید؟

من همه ویدئو ها و پادکست های کُدباز رو توی یوتیوب و ساندکلود و پلتفرم هایی آپلود می‌کنم که اغلب فیلتر هستند.

اغلب آموزش‌ها ویدئو و پادکست دارند. پس اگر می‌خواهید از محتوای سایت بیشترین استفاده رو ببرید نیاز به فیلتر شکن دارید.

توجه داشته باشید که برای خرید از فروشگاه بهتره فیلتر شکن رو خاموش کنید.

تنظیمات

انتخاب زبان
تغییر تم