Concurrent and Parallel Programming in Python
Offered By: Packt via Coursera
Course Description
Overview
Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Dive into the world of concurrent and parallel programming with this detailed course designed for Python developers. Begin with threading, learning how to create and manage threads, and progress to building complex systems with threading classes. Explore practical projects like creating a Wikipedia reader and a Yahoo Finance reader, mastering the use of queues, schedulers, and database integration.
Advance to multiprocessing, understanding how to leverage multiple CPU cores for enhanced performance. Learn to implement multiprocessing queues and pools, handle multiple arguments, and optimize CPU-intensive tasks. Finally, delve into asynchronous programming, mastering async tasks, timeouts, and libraries. Combine asynchronous and multiprocessing techniques for robust and scalable applications.
This course provides a thorough understanding of concurrent and parallel programming, preparing you to tackle real-world challenges and optimize your Python applications for performance and efficiency.
This course is ideal for Python developers, software engineers, and data scientists who want to enhance their skills in concurrent and parallel programming. A basic understanding of Python is recommended.
Syllabus
- Threading
- In this module, we will delve into the fundamentals of threading in Python. We'll start with an introduction to threading, multiprocessing, and asynchronous programming concepts. Then, we will explore the creation and management of threads, develop practical applications like a Wikipedia reader and Yahoo Finance reader, and integrate advanced features such as queues, schedulers, and locking mechanisms to optimize our concurrent and parallel programming skills.
- Multiprocessing
- In this module, we will explore the powerful capabilities of multiprocessing in Python. We'll begin with an introduction to the core concepts and advantages of using multiprocessing. Next, we will dive into practical implementations, including the use of multiprocessing queues, pools, and advanced techniques for handling multiple arguments and tasks. Finally, we will cover methods for efficiently processing and checking elements in lists within specific ranges, ensuring optimal performance in concurrent and parallel programming tasks.
- Asynchronous
- In this module, we will cover the essentials of asynchronous programming in Python. We'll start with an introduction to writing asynchronous programs and managing asynchronous tasks. You'll learn to use the async gather method and implement timeouts for handling multiple asynchronous operations effectively. We will also explore creating asynchronous for loops and using various asynchronous libraries. Finally, we'll delve into combining asynchronous programming with multiprocessing to achieve the highest level of concurrency and performance in your Python applications.
Taught by
Packt - Course Instructors
Related Courses
Conception et mise en œuvre d'algorithmes.École Polytechnique via Coursera Amazon Connect Routing Fundamentals
Amazon Web Services via AWS Skill Builder Applying Data Structures to Manipulate Cleansed UN Data
Coursera Project Network via Coursera AWS Elemental MediaConvert Primer (Korean)
Amazon Web Services via AWS Skill Builder Data Structure and Algorithms
Cabrillo College via California Community Colleges System