آموزش جاوا: Multi-threading و Concurrency ساده شده

دانلود Java: Multi-threading and Concurrency Simplified

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: با اطمینان کد تک رشته ای را به کد چند رشته ای تبدیل کنید، کاربردهای همزمان را درک کنید و موارد دیگر. تکنیک های کنترل همزمانی را با استفاده از بلوک ها و قفل های همگام سازی شده اعمال کنید. درک اجزای کلیدی بسته همزمان java\.util\. از جمله Fork Join Framework Mock یک تعامل ساده HttpServer شروع به فکر کردن به روش توزیع شده پیش نیازها: شما باید دانش اولیه برنامه نویسی شی گرا در جاوا را داشته باشید.

Multi Threading در جاوا ضروری‌ترین ویژگی است که هر توسعه‌دهنده جاوا باید آن را درک کند و بتواند با اطمینان آن را در حل مشکلات برنامه‌نویسی پیچیده در جایی که اجرای همزمان الزامی است، اعمال کند. با پردازش موازی خطری وجود دارد، یعنی تغییرپذیری مشترک و توانایی توسعه دهنده برای حل مشکلات همزمانی. 

به لطف زبان برنامه نویسی جاوا که باعث می شود توسعه برنامه های کاربردی چند رشته ای قدرتمند به شکلی زیبا انجام شود، اگر تعداد کمی از کلیدها یا مفاهیم اصلی را جذب کنید، می توانید با اطمینان برنامه های چند رشته ای را به راحتی طراحی کنید.

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

این دوره با در نظر گرفتن نکات فوق طراحی شده است و به شما کمک می کند تا از طریق مثال های ساده و قابل درک این مشکلات پیچیده را درک کنید. 

محتوای دوره شامل

است
  • درک رشته‌ها، اولویت‌ها، وضعیت‌ها، موضوعات شبح.

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

  • اجزای کلیدی بسته java.util.concurrent از جمله ForkJoinPool و ForkJoinTask(های).

  • HttpServer را مسخره کنید تا نحوه عملکرد HTTP را توضیح دهید و نحوه پاسخگویی یک سرور وب معمولی به درخواست‌های مشتری را شبیه‌سازی کنید.

  • ThreadLocal

  • مقدمه ای بر قفل های توزیع شده

  • مروری بر نحوه ساخت برنامه های مقیاس پذیر با استفاده از صف های پیام رسانی.

  • مقدمه ای بر Lambdas و Streams (در حال آمدن)


سرفصل ها و درس ها

معرفی Introduction

  • معرفی Introduction

  • برنامه های تک رشته ای و چند رشته ای Single Threaded vs Multi Threaded Apps

  • مثال برنامه تک رشته ای Single Threaded App Example

  • یادداشت ها - مثال برنامه تک رشته ای Notes - Single Threaded App Example

  • موازی واقعی در مقابل موازی منطقی True Parallelism vs Logical Parallelism

  • یادداشت ها - موازی واقعی در مقابل موازی منطقی Notes - True Parallelism vs Logical Parallelism

طراحی برنامه های چند رشته ای Designing Multi-threaded applications

  • طراحی موضوعات Designing Threads

  • طراحی موضوعات توضیح داده شده است Designing Threads Explained

  • یادداشت ها - طراحی موضوعات Notes - Designing Threads

  • کد را برای دستیابی به موازی سازی تغییر شکل دهید Transform code to achieve parallelism

  • یادداشت ها - کد را برای دستیابی به موازی سازی تغییر شکل دهید Notes - Transform code to achieve parallelism

  • سرویس مجری Executor Service

  • یادداشت ها - خدمات مجری Notes - Executor Service

  • توقف نخ در وسط Stopping Thread in the middle

  • یادداشت ها - متوقف کردن موضوع در وسط Notes - Stopping Thread in the middle

  • ایالات موضوع Thread States

  • یادداشت ها - ایالات موضوع Notes - Thread States

  • اولویت های موضوع Thread Priorities

  • یادداشت ها - اولویت های موضوع Notes - Thread Priorities

  • Threads و ThreadGroup سیستم داخلی Internal System Threads and ThreadGroup

  • یادداشت ها - رشته های داخلی سیستم و گروه های موضوعی Notes - Internal System Threads and ThreadGroup

  • موضوعات Daemon Daemon Threads

  • یادداشت ها - موضوعات Daemon Notes - Daemon Threads

  • وظیفه قابل تماس Callable Task

  • یادداشت ها - وظیفه قابل تماس Notes - Callable Task

  • جستجوی الگو در پوشه - رویکرد سریال Pattern search in folder - Serial approach

  • جستجوی الگو در پوشه - رویکرد موازی Pattern search in folder - Parallel approach

  • یادداشت ها - جستجوی الگو در پوشه Notes - Pattern Search in folder

  • مجموعه مشکلات - 1 Problem Set - 1

  • مجموعه مشکل - 1 - راه حل Problem Set - 1 - Solution

کنترل همزمان Concurrency Control

  • نیاز به همگام سازی Need for Synchronization

  • روشهای همزمان Synchronized methods

  • در صورت وجود اعضای ثابت ، همگام سازی می شود Synchronized in case of static members

  • مشکل با روش همگام سازی و راه حل با بلوک همگام سازی شده The Problem with Synchronized Method and Solution with Synchronized Block

  • یادداشت ها - همگام سازی موضوع Notes - Thread Synchronization

  • Deadlocks و راه حل با توالی قفل Deadlocks and solution with lock sequencing

  • یادداشت ها - بن بست و راه حل با توالی قفل Notes - Deadlocks and solution with lock sequencing

  • قفل های وارد شده Reentrant Locks

  • یادداشت ها - قفل های مجدد Notes - Reentrant Locks

  • مجموعه مشکلات - 2 Problem Set - 2

  • مجموعه مشکلات - 2 - راه حل Problem Set - 2 - Solution

  • موضوع سیگنالینگ با استفاده از انتظار و اطلاع رسانی Thread Signaling Using wait and notify

  • مشکل تولید کننده و مصرف کننده Producer and Consumer Problem

  • یادداشت ها - مشکل تولید کننده و مصرف کننده Notes - Producer and Consumer Problem

HttpServer و ThreadLocal Pattern را مسخره کنید Mock HttpServer and ThreadLocal Pattern

  • HTTP و سرور چند رشته HTTP سرور HTTP and Mock multi-threaded HTTP Server

  • موضوع محلی ThreadLocal

  • یادداشت ها - موضوع محلی Notes - ThreadLocal

بسته java.util.concurrent java.util.concurrent package

  • BlockingQueue و مشکل تولید کننده و مصرف کننده تجدید نظر شده BlockingQueue and revised producer and consumer problem

  • یادداشت ها - BlockingQueue و مشکل تولید کننده و مصرف کننده تجدید نظر شده Notes - BlockingQueue and revised producer and consumer problem

  • priorityblockingqueue PriorityBlockingQueue

  • یادداشت ها - PriorityBlockingQueue Notes - PriorityBlockingQueue

  • به چارچوب بپیوندید Fork Join Framework

  • یادداشت ها - چارچوب به چارچوب بپیوندید Notes - Fork Join Framework

  • سمافر Semaphore

  • CountDownLatch CountDownLatch

  • CyclicBarrier CyclicBarrier

  • انواع اتمی (AtomicInteger ، AtomicBoolean ....) Atomic Types (AtomicInteger, AtomicBoolean....)

شروع به تفکر فکر کردن Kick Start Thinking Distributed

  • با استفاده از صف مقیاس بندی کنید Scale up using Queues

  • در مورد قفل های توزیع شده سر می زنید Heads up about Distributed Locks

کد منبع Source Code

  • کد منبع برای بارگیری Source Code for download

بعدا چی؟ What's next?

  • سخنرانی جایزه: کوپن های پیشنهادی سایر دوره های من Bonus Lecture: OFFER Coupons for my other courses

نمایش نظرات

آموزش جاوا: Multi-threading و Concurrency ساده شده
جزییات دوره
4 hours
61
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
26,471
4.4 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Sagar Uppuluri Sagar Uppuluri

مهندس نرم افزار و یک مربی پرشور ساگر فارغ التحصیل M.Tech از ANU ، یک توسعه دهنده برنامه و یک مربی پرشور جدا از اینکه یک یادگیرنده و شنونده خوب است ، کار خود را به عنوان یک مربی آغاز کرد و بعداً او بخشی از طراحی و توسعه چندین پروژه نرم افزاری بود و محصولات شهرت خود را به عنوان یک توسعه دهنده سخت افزار جاوا و متخصص یکپارچه سازی سیستم به دست آورد و با مهارت های فنی ، رهبری و راهنمایی خود در موفقیت در چندین پروژه نقش مهمی داشت.