Python Concurrent Programming: Introduction to Concurrent Programming

Python 3.0+    |    Beginner
  • 14 Videos | 1h 35m 11s
  • Includes Assessment
  • Earns a Badge
Likes 17 Likes 17
Explore the general theory of concurrent programming, and examine how to have multiple tasks active at any given point in time. This 14-video course offers an in-depth examination of concurrent programming by using the Python programming language. First, learners will examine the two main forms of concurrent programming, multithreading and multiprocessing, and examine their differences and use cases. Next, you will examine executing multitask sequentially, and with multithreading to save time, and how to use multiprocessing to manage a collection of tasks efficiently. Continue by exploring challenges that programmers encounter when adopting concurrency such as synchronization issues and deadlocks, and how to address these issues. You will examine issues that arise when writing concurrent code, and you will learn how to fix these by using the built-in objects available in Python. Finally, this course examines several of the objects available in the Python language such as queues and pools, which simplify the task of building multithreading and multiprocessing applications.

WHAT YOU WILL LEARN

  • discover the key concepts covered in this course
    recognize what sequential execution is and what its limitations are
    describe multithreading and compare its performance with a sequential execution of tasks
    identify the specific use cases for multithreading
    summarize multiprocessing and contrast it with multithreading
    describe the implementation of threads and processes in the Python language
    recognize what a race condition is and when it can occur with concurrent programming
  • outline how locks can help concurrent tasks synchronize their actions on shared resources
    summarize how semaphores can restrict the number of concurrent tasks accessing a shared resource
    identify the use cases for event and condition objects in Python and distinguish between the two
    recognize when a deadlock can occur in an application and the actions you can take to avoid it
    enumerate the built-in data structures available in Python for concurrent programming
    outline how pools of threads and processes can optimize concurrency in your application
    recall the different synchronization mechanisms in Python and the conditions necessary for deadlocks

IN THIS COURSE

  • Playable
    1. 
    Course Overview
    2m 44s
    UP NEXT
  • Playable
    2. 
    Working with Multiple Tasks
    5m 18s
  • Locked
    3. 
    An Introduction to Multithreading
    6m 18s
  • Locked
    4. 
    Applications of Multithreading
    4m 35s
  • Locked
    5. 
    Multiprocessing
    8m 13s
  • Locked
    6. 
    Concurrent Programming
    9m 8s
  • Locked
    7. 
    Challenges with Concurrency
    6m 59s
  • Locked
    8. 
    Synchronization Using Locks
    6m 45s
  • Locked
    9. 
    Synchronization Using Semaphores
    4m 54s
  • Locked
    10. 
    Synchronization Using Events and Conditions
    8m 3s
  • Locked
    11. 
    Deadlocks
    8m 28s
  • Locked
    12. 
    Data Structures for Concurrent Tasks
    6m 30s
  • Locked
    13. 
    Thread and Process Pool
    6m 23s
  • Locked
    14. 
    Exercise: Introduction to Concurrent Programming
    4m 53s

EARN A DIGITAL BADGE WHEN YOU COMPLETE THIS COURSE

Skillsoft is providing you the opportunity to earn a digital badge upon successful completion of this course, which can be shared on any social network or business platform

Digital badges are yours to keep, forever.

PEOPLE WHO VIEWED THIS ALSO VIEWED THESE

Likes 1602 Likes 1602  
Likes 159 Likes 159