US $19.97

Concurrent and Parallel Programming in Python

——   Created by Maximilian Schallwig

Speed up your programs with concurrency

Share this course:

NEW
Course
28
Lessons
6h 07m
Lesson time
all
Skill levels

More about this course

In this course you'll learn how to create multi-threaded, asynchronous, and multi-process programs in Python, so that you can make your programs run even faster.

In applications communicating with other resources, a lot of time is spent just waiting for information to be passed from one place to another. You'll learn how to use multi-threading as well as asynchronous programming to speed up programs that are heavily bottlenecked by IO operations.

We'll go through an introduction first of where potential speed bottlenecks come from as well as how we could solve these issues, and then we'll dive directly into the technical content and build out a multi-threaded program together that grabs data from the internet, parses, and saves it into a local database.

Other programs may be more heavily affected by CPU limitations. We'll also learn how to implement multiprocessing in Python, the library that lets us use multiple CPUs in our Python code. With this we'll be able to spread our workload over all the cores available on the machine we're using.

Finally, we'll also look to combine both elements, taking a look at how we can use multiprocessing together with asynchronous programming to get the most benefit for yourself, maximizing your use of CPU resources and minimizing time spent siting idle waiting for IO response.

You can find the lecture code in the GitHub repository linked in the first lesson.

28 Lessons

Threading
14 mins
Threading, Multiprocessing, Async Intro
free preview
19 mins
Threading in Python
15 mins
Creating a Threading Class
15 mins
Creating a Wikipedia Reader
17 mins
Creating a Yahoo Finance Reader
16 mins
Queues and Master Scheduler
22 mins
Creating a Postgres Worker
21 mins
Integrating the Postgres Worker
19 mins
Yaml File Intro
31 mins
Creating a Yaml Reader
29 mins
Improving Our Wiki Worker
30 mins
Improving All Workers and Adding Monitoring
8 mins
Final Program Cleanup
13 mins
Locking
View more lessons +

About the instructor

Maximilian  Schallwig

Hey there! My name is Max.


And I’m a data loving, Dungeons & Dragons playing, Python programming dude.

I’ve got a Bachelors in Physics and …

Read more
This course is included in Arbington Premium
$15/month gets you access to every course. Start your 14 day trial today. ☝️

Class benefits

  • Certificate of Completion
  • 30 day satisfaction guarantee
  • 24/7 streaming access
  • Direct teacher access
  • 6h 07m of on-demand video
  • Have a coupon?
  • Checkout