Python Concurrent Programming: Introduction to Concurrent Programming

Python    |    Beginner
  • 14 videos | 1h 29m 11s
  • Includes Assessment
  • Earns a Badge
Rating 4.4 of 34 users Rating 4.4 of 34 users (34)
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

  • 2m 44s
  • 5m 18s
    Upon completion of this video, you will be able to recognize what sequential execution is and what its limitations are. FREE ACCESS
  • Locked
    3.  An Introduction to Multithreading
    6m 18s
    After completing this video, you will be able to describe multithreading and compare its performance to a sequential execution of tasks. FREE ACCESS
  • Locked
    4.  Applications of Multithreading
    4m 35s
    In this video, find out how to identify specific use cases for multithreading. FREE ACCESS
  • Locked
    5.  Multiprocessing
    8m 13s
    In this video, find out how to summarize multiprocessing and contrast it with multithreading. FREE ACCESS
  • Locked
    6.  Concurrent Programming
    9m 8s
    Upon completion of this video, you will be able to describe the implementation of threads and processes in Python. FREE ACCESS
  • Locked
    7.  Challenges with Concurrency
    6m 59s
    After completing this video, you will be able to recognize what a race condition is and when it can occur during concurrent programming. FREE ACCESS
  • Locked
    8.  Synchronization Using Locks
    6m 45s
    In this video, you will outline how locks can help concurrent tasks synchronize their actions on shared resources. FREE ACCESS
  • Locked
    9.  Synchronization Using Semaphores
    4m 54s
    In this video, you will summarize how semaphores can restrict the number of concurrent tasks accessing a shared resource. FREE ACCESS
  • Locked
    10.  Synchronization Using Events and Conditions
    8m 3s
    In this video, you will identify the use cases for event and condition objects in Python and distinguish between the two. FREE ACCESS
  • Locked
    11.  Deadlocks
    8m 28s
    After completing this video, you will be able to recognize when a deadlock can occur in an application and the actions you can take to avoid it. FREE ACCESS
  • Locked
    12.  Data Structures for Concurrent Tasks
    6m 30s
    During this video, you will learn how to enumerate the built-in data structures available in Python for concurrent programming. FREE ACCESS
  • Locked
    13.  Thread and Process Pool
    6m 23s
    In this video, you will outline how pools of threads and processes can optimize concurrency in your application. FREE ACCESS
  • Locked
    14.  Exercise: Introduction to Concurrent Programming
    4m 53s
    After completing this video, you will be able to recall the different synchronization mechanisms in Python and the conditions necessary for deadlocks. FREE ACCESS

EARN A DIGITAL BADGE WHEN YOU COMPLETE THIS COURSE

Skillsoft is providing you the opportunity to earn a digital badge upon successful completion on some of our courses, 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

Rating 4.5 of 183 users Rating 4.5 of 183 users (183)
Rating 4.5 of 80 users Rating 4.5 of 80 users (80)
Rating 4.3 of 627 users Rating 4.3 of 627 users (627)