استفاده از چندین thread باعث کندی برنامه نمیشه؟
سلام
وقتتون بخیر
یه پروژه دارم مینویسم که توش خیلی شمارنده داره (5تا 50 ترد بستگی به درخواست کاربر داره)
این شمارنده ها قراره اختلاف بین دو تاریخ ونشون بدن
حالا میخوام بدونم استفاده زیاد از ترد باعث کندی برنامه یا هنگ کردن گوشی کاربر نمیشه
آیا درسته یه پروژه این همه ترد داشته باشه
ممنون میشم راهنماییم کنید .
برای روشن شدن این مطلب یک مثال واضح میزنم :
فرض کنید در یک روز عادی قصد ورزش کردن دارید . شما به یک ورزشگاه مراجعه می کنید و روی ترد میل میدوید . طبعاً دویدن روی تردمیل ماهیچه های پا را درگیر میکند ، در این شرایط مواد مغذی داخل برای سوخت ساز سلول های ماهیچه های پا طلف می شوند و در این وضعیت اندکی از انرژی بدن تحلیل می رود . حال در این شرایط اگر ماهیچه های دیگر از قبیل بازو ، سرشانه و ... درگیر شوند بخش دیگری از مواد مغذی خون نیز مصرف میشود و نیروی بدن به سرعت رو به تحلیل میرود . در این حال اگر ذهن نیز درگیر موضوعی شود دیگر شرایط وخیم تر می شود و ممکن است قلب و خون دیگر جواب گو نباشند و اتفاق ناگواری بیافتد.
این مثال را دقیقاً میتوان به بخش Threading برد! یعنی چی؟
یعنی هر چه Thread های برنامه بیشتر باشند ( Thread های در حال اجرا ) سی پی یو و گاهاً کارت گرافیک باید نیروی بیشتری برای پشتیبانی از آنها مصرف کنند و مصلماً هر سی پی یو حداکثر توانایی دارد و اگر محاسباتی که بر عهده او قرار میگیرند از توان او بیشتر شوند ، سی پی یو این نقص (محدودیت سرعت در پردازش) را با کاهش سرعت انجام محاسبات (داخل thread ها) جبران می کند.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .