* Cantinho Satkeys

Refresh History
  • FELISCUNHA: Votos de um santo domingo para todo o auditório  4tj97u<z
    03 de Novembro de 2024, 10:49
  • j.s.: bom fim de semana  43e5r6 49E09B4F
    02 de Novembro de 2024, 08:37
  • j.s.: ghyt74 a todos  4tj97u<z
    02 de Novembro de 2024, 08:36
  • FELISCUNHA: ghyt74   49E09B4F  e bom feriado   4tj97u<z
    01 de Novembro de 2024, 10:39
  • JPratas: try65hytr Pessoal  h7ft6l k7y8j0
    01 de Novembro de 2024, 03:51
  • j.s.: try65hytr a todos  4tj97u<z
    30 de Outubro de 2024, 21:00
  • JPratas: dgtgtr Pessoal  4tj97u<z k7y8j0
    28 de Outubro de 2024, 17:35
  • FELISCUNHA: Votos de um santo domingo para todo o auditório  k8h9m
    27 de Outubro de 2024, 11:21
  • j.s.: bom fim de semana   49E09B4F 49E09B4F
    26 de Outubro de 2024, 17:06
  • j.s.: dgtgtr a todos  4tj97u<z
    26 de Outubro de 2024, 17:06
  • FELISCUNHA: ghyt74   49E09B4F  e bom fim de semana
    26 de Outubro de 2024, 11:49
  • JPratas: try65hytr Pessoal  101yd91 k7y8j0
    25 de Outubro de 2024, 03:53
  • JPratas: dgtgtr A Todos  4tj97u<z 2dgh8i k7y8j0
    23 de Outubro de 2024, 16:31
  • FELISCUNHA: ghyt74  pessoal   49E09B4F
    23 de Outubro de 2024, 10:59
  • j.s.: dgtgtr a todos  4tj97u<z
    22 de Outubro de 2024, 18:16
  • j.s.: dgtgtr a todos  4tj97u<z
    20 de Outubro de 2024, 15:04
  • FELISCUNHA: Votos de um santo domingo para todo o auditório  101041
    20 de Outubro de 2024, 11:37
  • axlpoa: hi
    19 de Outubro de 2024, 22:24
  • FELISCUNHA: ghyt74   49E09B4F  e bom fim de semana  4tj97u<z
    19 de Outubro de 2024, 11:31
  • j.s.: ghyt74 a todos  4tj97u<z
    18 de Outubro de 2024, 09:33

Autor Tópico: Part A - Multithreading & Thread Synchronization - C/C++  (Lida 93 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Online mitsumi

  • Moderador Global
  • ***
  • Mensagens: 115716
  • Karma: +0/-0
Part A - Multithreading & Thread Synchronization - C/C++
« em: 01 de Junho de 2021, 17:21 »

MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz, 2 Ch
Genre: eLearning | Language: English + srt | Duration: 124 lectures (11h 53m) | Size: 4.13 GB
Linux POSIX Threads ( Pthreads ), thread Synchronization, Operating System Concepts, C/C++ programming with Projects

What you'll learn:
MultiThreading Fundamentals
Concurrency
Mutual Exclusion Vs Atomocity
Thread Synchronization Techniques
Writing Thread Safe Codes
Mutexes, Semaphores
Signaling and Wait
Interview Questions

Requirements
C language is MUST
Linux Operating Systems
Zeal to learn and excel
Enthusiasm to write lots of Code

Description
Welcome to the Course Series on Multi-Threading - The Master Class Course on Threads.

This course is for those who want to develop fundamental concepts on Multi-threading and related concepts. In this course, we shall be going to cover Multi-threading concepts based on Pthreads (POSIX threads) on the Linux platform.

Though We use the C language to demonstrate the concepts, concepts hold good for any programming language. This course is equally valuable for C++ programmers. Other language programmers may also find this course useful as we explain Multithreading concepts close to the ground zero levels No Abstraction.

We shall discuss several concepts involved in multithreading and demonstrate each concept through a sample program. Several Important Concepts include but not limited to - Deadlocks, Mutual Exclusion, Atomicity, Thread Synchronization, Race Conditions, Thread forking, and many more.

In the Next Installment of this course, we shall extend our knowledge of Multi-threading to Advance Concepts, including mini-projects on Multithreading and Thread Synchronization.

At each stage of this Course series, you shall be writing a lot of multi-threaded Codes. So be ready to Master the Multi-threading. Along the journey, we shall cover several interview-favorite topics and Questions to prepare you alongside for interviews.

Best of luck!

Table Of Contents:

= = = ======= = = =

1. Understanding Threads

Thread Creation & Termination

Race condition on Thread Creation

Passing Argument to Thread Function

Stack Memory Mgmt for Multi-threaded Programs

Thread Scheduling

2. Understanding Concurrency and Parallelism

Singlularism Vs Concurrency Vs Parallelism

Concurrent Process Design - 2 Examples

Threads as Light Weighted Process

Overlapping and Non-Overlapping Work

3. Joinable and Detached Threads

Joinable Vs Detached Threads

How to Join a thread

Whom to Join?

Sample - Map-Reduce Program

4. Inter Thread Communication

Understanding Callbacks and Function Pointers

Best way to implement ITC

Implementing Notification Chains

A Publisher Subscriber Model

How to Subscribe/UnSubscribe

How to send Notification to Subscribers

5. Asynchronous Thread Cancellation

Thread Cancellation

Asynchronous and Deferred Thread Cancellation

Problem with Async Thread Cancellation

Resource Leaking

Invariants

Deadlocks

Concept of Thread Cleanup Handlers

Prevent Resource Leaking

Data Structure Corruption - Invariants

Cancellation causing Deadlocks

6. Deferred Cancellation

Understanding Deferred Cancellation

Implementation

7. Listener Threads - Responsibility Delegation

Why Listener threads?

Designing Listener threads

Code Changes and Demo

Cancellation of blocked Threads

8. Thread Synchronization

Critical Section

Mutex Rules

Mutex Locking

Mutex Locking - Code Locking

Mutex Locking - Data Locking

Mutex based APIs

Mutexes in Action

9. Deadlocks

What are deadlocks and why do they happen?

Necessary conditions for Deadlock to happen

Mutex lock Ordering Causing Deadlocks

10. Condition Variables

Understanding CV

CV Vs Mutex

Wait( ) & Signal( )

Producer-Consumer Thread Synchronization

Spurious Wake Ups

Thread Vs Resource Specific CV

Broadcasting a CV

Implement Producer-Consumer Problem

11. Dining Philosopher Problem

Problem Description

Data Structures Setup

Assignment Program Setup

Flowchart/Algorithm Discussion

Final Implementation (Step by Step )

12. Semaphores

Introduction

Semaphores Vs Mutexes

How Semaphore work

Strict Alternation Problem

Semaphore Implementation

Semaphore Types

Strong and Weak Semaphores

Listing Upcoming Advanced Multi-Threading Topics for Sequel Course ( Under Progress )

= = = = = = = = = = = = = = = = = = = = = =

1. Pausing and Resuming Threads

2. Thread Pools

3. Standard Problems - Reader/Writer Problem

4. Implementing Thread Barriers

5. Implementing Thread Monitors

6. Solving Sync Problems using Monitors

7. Deadlock Detection and Prevention

8. Wait Queues

9. Implement Timers using Threads

10. How to fork a multi-threaded process

11. Process Synchronization using Named Semaphores

Happy Learning.

Who this course is for
Engineering graduates & post-graduates
Working professionals and Job Seekers
Free lancers , System Engineers, Developers


Download link:
Só visivel para registados e com resposta ao tópico.

Only visible to registered and with a reply to the topic.

Links are Interchangeable - No Password - Single Extraction