این تمرینها بر پایهی درس کلاس Pool در multiprocessing هستند.
تمرین ۱ (مفهومی)
کلاس Pool چه چیزی برای ما میسازد و چرا وقتی دادههای زیادی داریم مفید است؟
تمرین ۲ (مفهومی)
متد pool.map با یک تابع و یک لیست اعداد ورودی چه کاری انجام میدهد؟
تمرین ۳ (مفهومی)
چرا ساختن Pool درون دستور with بهتر از ساختن مستقیم آن است؟
تمرین ۴ (مفهومی)
در مثال، چه چیزی تعداد پردازشهایی که همزمان کار میکنند را مشخص میکند؟ اگر آن را ندهیم، مقدار پیشفرض چیست؟
تمرین ۵ (کد)
با Pool و map مربع اعداد ۱ تا ۵ را روی ۳ پردازهی موازی محاسبه کنید.
تمرین ۶ (کد)
تابعی بنویسید که دو عدد را جمع میزند و با starmap آن را روی فهرستی از جفتها اجرا کنید. چرا اینجا map کافی نیست؟
تمرین ۷ (کد واقعی)
یک کار سنگین CPU-bound را روی چهار ورودی، یک بار ترتیبی و یک بار با Pool اجرا کنید و زمان هر دو را مقایسه کنید.
تمرین ۸ (مفهومی)
تفاوت map، apply_async و imap چیست؟ Pool برای چه نوع کاری (I/O یا CPU) مناسبتر است؟