FULLSTACKDEVS Telegram 633
Forwarded from Web Devs
#multithread
#multitask
#thread
#task
#async

✳️ Multitasking vs Multithreading

🔻آیا تا به حال مدت ها منتظر کسی یا کاری بوده اید ، در حالی که هیچ کاری انجام نمی دهید و فکر می کنید که می توانستید کار دیگری انجام دهید؟ این زمانی است که اهمیت multithreading را درک می کنید. انتظار وقتی آسانتر می شود که بتوانید کارهای دیگری را انجام دهید در حالی که منتظر کسی یا چیز دیگری هستید. برای روشن تر شدن مفهوم چند وظیفه ای ، مادر خود را در نظر بگیرید. از زمان به دنیا آمدن ، من مادرم را دیده ام که همزمان چندین کار را انجام می دهد و همیشه تعجب می کنم که او چگونه این کار را انجام می دهد؟ او خانه را تمیز می کند ، لباس های می شوید و همزمان غذا را آماده می کند.

▪️در برنامه نویسی ، شما با وضعیت های بسیاری روبرو میشوید که مجبور می شوید از multithreading و multitasking استفاده کنید.

به عنوان مثال ، هنگام خواندن یک file بزرگ ، بهتر است به کاربر اجازه دهید کارهای دیگری انجام دهد. از این رو ، چه تفاوتی بین multithreading و multitasking وجود دارد؟ آیا آنها یکسان هستند؟

🔸Multitasking

به این معنی است که به کاربر اجازه می دهد چندین task را همزمان انجام دهد. کاربر می تواند ضمن نوشتن یک وبلاگ ، به موسیقی در حال اجرا در پس زمینه گوش دهد. بنابراین کامپیوتر چندین کار را برای کاربر انجام می دهد. هر task به منابع نیاز دارد. از آنجا که کامپیوتر از منابع محدودی برخوردار است ، تعداد کارهای انجام شده در همان زمان نیز محدود است.

🔹Multithreading

ترد ها مربوط به بالاترین سطح کد اجرا شده توسط یک پردازنده هستند ، بنابراین با بسیاری از تردها، سی پی یو شما می تواند همزمان چندین کار را انجام دهد. تمام CPU ها تردهای فعال دارند و هر فرایندی که در رایانه شما انجام می شود حداقل یک ترد واحد دارد.
ترد برای انجام task های متعدد استفاده می شود. هر task می تواند چندین thread داشته باشد. در یک برنامه multithreaded کاربر می تواند در مدت زمان کوتاتر نسبت به یک برنامه single thread کارهای بیشتری انجام دهد. امروزه تقریباً در هر برنامه
از multiple threading استفاده شده است. یک برنامه یا یک process می تواند یک user interface thread داشته باشد که در تعامل با کاربر باشد
و background worker threads که کارهای دیگری را انجام می دهند.

🔵 حال می بینیم که چگونه multithreading و multitasking در C # کار می کند.

▪️یک task چیزی است که شما می خواهید انجام شود. ترد یکی از موارد ممکن است که آن task را انجام میدهد.

▫️در دات نت Task یک عملیات واحد را نشان می دهد و معمولاً بصورت غیر همزمان (asynchronous) انجام می شود.

▪️تسک آبجکت Task Object ها یکی از کامپوننت های اصلی task-based asynchronous pattern است که برای اولین بار در .NET Framework 4 معرفی شده است.

▫️ کارهایی که توسط یک task انجام می شود به طور معمول بصورت غیر همزمان برروی
یک thread از threadpool اجرا می شود. تسک ها برای پردازنده های چند هسته ای تنظیم شده اند.

▪️تسک Task ها توسط task library تنظیم می شوند تا از thread های threadpool به روشی بسیار کارآمدتر از زمانی که خود از thread استفاده میکنید ،استفاده میکند.
ایجاد thread بسیار گران است ، Task ها صف خواهند شد و از thread ها استفاده مجدد میشود. بنابراین هنگامی که مثلا از یک thread در انتظار network I/O است ، در واقع می توان از آن برای اجرای یک کار دیگر استفاده کرد. شما فقط می توانید تعداد thread هایی را که با تعداد هسته پردازنده شما مطابقت دارد ، اجرا کنید (به طور همزمان)

همیشه سعی کنید از task استفاده کنید و اگر با مشکلی روبرو هستید که باعث می شود خودتان بخواهید thread را کنترل کنید (احتمالاً 1٪) سپس از thread ها استفاده کنید.

@fullStackDevs



tgoop.com/fullStackDevs/633
Create:
Last Update:

#multithread
#multitask
#thread
#task
#async

✳️ Multitasking vs Multithreading

🔻آیا تا به حال مدت ها منتظر کسی یا کاری بوده اید ، در حالی که هیچ کاری انجام نمی دهید و فکر می کنید که می توانستید کار دیگری انجام دهید؟ این زمانی است که اهمیت multithreading را درک می کنید. انتظار وقتی آسانتر می شود که بتوانید کارهای دیگری را انجام دهید در حالی که منتظر کسی یا چیز دیگری هستید. برای روشن تر شدن مفهوم چند وظیفه ای ، مادر خود را در نظر بگیرید. از زمان به دنیا آمدن ، من مادرم را دیده ام که همزمان چندین کار را انجام می دهد و همیشه تعجب می کنم که او چگونه این کار را انجام می دهد؟ او خانه را تمیز می کند ، لباس های می شوید و همزمان غذا را آماده می کند.

▪️در برنامه نویسی ، شما با وضعیت های بسیاری روبرو میشوید که مجبور می شوید از multithreading و multitasking استفاده کنید.

به عنوان مثال ، هنگام خواندن یک file بزرگ ، بهتر است به کاربر اجازه دهید کارهای دیگری انجام دهد. از این رو ، چه تفاوتی بین multithreading و multitasking وجود دارد؟ آیا آنها یکسان هستند؟

🔸Multitasking

به این معنی است که به کاربر اجازه می دهد چندین task را همزمان انجام دهد. کاربر می تواند ضمن نوشتن یک وبلاگ ، به موسیقی در حال اجرا در پس زمینه گوش دهد. بنابراین کامپیوتر چندین کار را برای کاربر انجام می دهد. هر task به منابع نیاز دارد. از آنجا که کامپیوتر از منابع محدودی برخوردار است ، تعداد کارهای انجام شده در همان زمان نیز محدود است.

🔹Multithreading

ترد ها مربوط به بالاترین سطح کد اجرا شده توسط یک پردازنده هستند ، بنابراین با بسیاری از تردها، سی پی یو شما می تواند همزمان چندین کار را انجام دهد. تمام CPU ها تردهای فعال دارند و هر فرایندی که در رایانه شما انجام می شود حداقل یک ترد واحد دارد.
ترد برای انجام task های متعدد استفاده می شود. هر task می تواند چندین thread داشته باشد. در یک برنامه multithreaded کاربر می تواند در مدت زمان کوتاتر نسبت به یک برنامه single thread کارهای بیشتری انجام دهد. امروزه تقریباً در هر برنامه
از multiple threading استفاده شده است. یک برنامه یا یک process می تواند یک user interface thread داشته باشد که در تعامل با کاربر باشد
و background worker threads که کارهای دیگری را انجام می دهند.

🔵 حال می بینیم که چگونه multithreading و multitasking در C # کار می کند.

▪️یک task چیزی است که شما می خواهید انجام شود. ترد یکی از موارد ممکن است که آن task را انجام میدهد.

▫️در دات نت Task یک عملیات واحد را نشان می دهد و معمولاً بصورت غیر همزمان (asynchronous) انجام می شود.

▪️تسک آبجکت Task Object ها یکی از کامپوننت های اصلی task-based asynchronous pattern است که برای اولین بار در .NET Framework 4 معرفی شده است.

▫️ کارهایی که توسط یک task انجام می شود به طور معمول بصورت غیر همزمان برروی
یک thread از threadpool اجرا می شود. تسک ها برای پردازنده های چند هسته ای تنظیم شده اند.

▪️تسک Task ها توسط task library تنظیم می شوند تا از thread های threadpool به روشی بسیار کارآمدتر از زمانی که خود از thread استفاده میکنید ،استفاده میکند.
ایجاد thread بسیار گران است ، Task ها صف خواهند شد و از thread ها استفاده مجدد میشود. بنابراین هنگامی که مثلا از یک thread در انتظار network I/O است ، در واقع می توان از آن برای اجرای یک کار دیگر استفاده کرد. شما فقط می توانید تعداد thread هایی را که با تعداد هسته پردازنده شما مطابقت دارد ، اجرا کنید (به طور همزمان)

همیشه سعی کنید از task استفاده کنید و اگر با مشکلی روبرو هستید که باعث می شود خودتان بخواهید thread را کنترل کنید (احتمالاً 1٪) سپس از thread ها استفاده کنید.

@fullStackDevs

BY Web Devs


Share with your friend now:
tgoop.com/fullStackDevs/633

View MORE
Open in Telegram


Telegram News

Date: |

On June 7, Perekopsky met with Brazilian President Jair Bolsonaro, an avid user of the platform. According to the firm's VP, the main subject of the meeting was "freedom of expression." With Bitcoin down 30% in the past week, some crypto traders have taken to Telegram to “voice” their feelings. Administrators Ng, who had pleaded not guilty to all charges, had been detained for more than 20 months. His channel was said to have contained around 120 messages and photos that incited others to vandalise pro-government shops and commit criminal damage targeting police stations. In the “Bear Market Screaming Therapy Group” on Telegram, members are only allowed to post voice notes of themselves screaming. Anything else will result in an instant ban from the group, which currently has about 75 members.
from us


Telegram Web Devs
FROM American