This course is a lab-only exploration of the creation and management of processes in Python to speed up the execution of your programs. In this 10-video course, learners will use Jupyter notebooks to execute all programs demonstrated. First, you will learn how to create initialized threads, and how to do the same with processes in Python. Then you will examine different thread-safe data structures in Python to implement queues, stacks, and priority queues. Next, you will learn how to use Python for synchronization mechanisms and inter-process communication, and will see a comparison of processes to threads. You will learn to use Python's built-in queue data structure for multithreaded applications, and how to implement multiprocessing. Continue by learning how processes are created and executed and how they differ from threads when one is using shared resources. You will explore how to use a manager class, or service process manager to share any Python types. Finally, you will examine the available mechanisms in Python for communication and synchronization between processes.
Python Concurrent Programming: Multiprocessing in Python