امید شریف مهر

Multi Threading در اندروید

در این ویدیو یاد می‌گیریم که Multi Threading در اندروید چیست، اما باید در نظر داشت که این مفهوم فقط مختص برنامه نویسی اندروید نیست.

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

ویدیو Multi Threading در اندروید

 

‌‌‌مالتی ترد چیست؟

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

Multi Threading در اندروید نیز به معنای داشتن چند ترد یا چند جریان است.

 

برنامه ما می‌تواند چند خط کد خیلی ساده باشد، مانند جمع دو عدد

 

در این مثال برنامه‌ی ما از بالا به پایین اجرا می‌شود، که این می‌تواند یک ترد یا جریان باشد.

برنامه‌ی اندرویدی که ما می‌نویسیم کدهای آن درون Main Thread یا جریان اصلی اجرا می‌شوند.

پس نتیجه می‌گیریم که ما در برنامه نویسی اندروید یک ترد اصلی داریم که برنامه‌ها درون آن اجرا می‌شوند.

 

آیا زبان های کاتلین و جاوا از Multi Thread پشتیبانی میکنند؟

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

 

چرا نیاز به چند ترد داریم؟

ترد اصلی در لحظه فقط می‌تواند یک کار انجام دهد و کدها را از بالا به پایین اجرا می‌کند.

برای مثال دو عددی که در بالا مثال زدیم را اجرا و محاسبه کند.

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

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

 

اینجاست که از برنامه نویسی مالتی ترد استفاده می‌کنیم و فقط کافی است دانلود فایل را در یک ترد دیگر انجام دهیم،

تا برنامه هنگ نکند و کاربر همچنان با UI برنامه در تعامل باشد.

 

پس ما می‌توانیم یکسری از کارها را در تردهای جداگانه‌ای انجام بدهیم، و ترد اصلی را سبک کنیم.

باید به این نکته نیز توجه داشت، که ما همه‌ی کارها را نمی‌توانیم در تردهای جداگانه‌ای انجام بدیم، برای مثال نمایش یک Toast را حتما باید در ترد اصلی پیاده سازی کنیم.

❤❤

جمع بندی

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

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

امیدوارم مقاله Multi Threading در اندروید برایتان مفید واقع شده باشه، هر سوال و ابهامی داشتید حتما در بخش کامنت ها بپرسید. موفق باشید.

خروج از نسخه موبایل