This course will teach you how to make your Python programs faster, more efficient, and responsive. You will learn how and when to use the threading, multi-processing, concurrent.futures, and asyncio modules.
Until recently, you could speed up your programs by simply running them on newer, faster hardware. Now, instead of making CPU's faster, hardware makers are adding more CPU cores to your computing devices. To make programs run faster today, employing concurrency techniques to get your programs running on multiple cores simultaneously is paramount. In this course, Getting Started with Python Concurrency, you'll learn how to make your Python programs more efficient, responsive, and faster using Python's concurrency packages. First, you'll explore how to choose the right concurrency package for your task. Next, you'll discover how to distribute a task to worker processes to speed up execution by running on multiple cores. Finally, you'll cover how to do node.js style asynchronous programming using the asyncio package. When you're finished with this course, you'll have a solid understanding of concurrency concepts and how to apply them in Python in a simple and readable manner to achieve greater performance results.
Tim Ojo is a software developer with a fondness for building scalable backend applications in Java, C#, Python, and Scala. He actively contributes to the developer community by blogging and speaking about topics, such as search engines, recommender systems, NoSQL databases, general developer best practices, and data science.