Skip to content

Concurrency books — Python

All book lists · Concepts

Parallel Loops in Python

Jason Brownlee · 1st edition · SuperFastPython (self-published) · 2022
dedicated to concurrency · on the shelf · example code ↗

Chapters
  • 1 Introduction
  • 2 Parallel Loop with the Thread Class
  • 3 Parallel Loop with the ThreadPool Class
  • 4 Parallel Loop with the ThreadPoolExecutor Class
  • 5 Parallel Loop with the Process Class
  • 6 Parallel Loop with the Pool Class
  • 7 Parallel Loop with the ProcessPoolExecutor Class

Cited on: Multiprocessing, Parallel iterators and streams, Thread pool and executor

Python Asyncio Jump-Start: Asynchronous Programming And Non-Blocking I/O With Coroutines

Jason Brownlee · 1st edition · SuperFastPython (self-published) · 2022
dedicated to concurrency · on the shelf · example code ↗

Chapters
  • 1 Asyncio Concurrency
  • 2 Coroutines and Tasks
  • 3 Collections of Tasks
  • 4 Iterators, Generators, and Context Managers
  • 5 Queues and Synchronization Primitives
  • 6 Subprocesses and Streams
  • 7 Port Scanner Case Study

Cited on: Child process, Condition variable, Critical section, Mutex, Task (async)

Python Concurrency with asyncio

Matthew Fowler · 1st edition · Manning Publications · 2022
dedicated to concurrency · on the shelf · publisher ↗ · example code ↗

Chapters
  • 1 Getting to know asyncio
  • 2 asyncio basics
  • 3 A first asyncio application
  • 4 Concurrent web requests
  • 5 Non-blocking database drivers
  • 6 Handling CPU-bound work
  • 7 Handling blocking work with threads
  • 8 Streams
  • 9 Web applications
  • 10 Microservices
  • 11 Synchronization
  • 12 Asynchronous queues
  • 13 Managing subprocesses
  • 14 Advanced asyncio

Cited on: Blocking and non-blocking calls, Blocking the event loop, Child process, Coroutine, Event loop, Global interpreter lock, I/O multiplexing, I/O-bound and CPU-bound work, Lock-free, Map-reduce, Multiprocessing, Multitasking, Process, Semaphore, Sequential execution, Task queue, Timeout

Using Asyncio in Python: Understanding Python's Asynchronous Programming Features

Caleb Hattingh · 1st edition · O'Reilly Media · 2020
dedicated to concurrency · on the shelf

Chapters
  • 1 Introducing Asyncio
  • 2 The Truth About Threads
  • 3 Asyncio Walk-Through
  • 4 20 Asyncio Libraries You Aren’t Using (But…Oh, Never Mind)
  • 5 Concluding Thoughts
  • A Short History of Async Support in Python

Cited on: Asynchrony, Event loop, Thread

Python Parallel Programming Cookbook

Giancarlo Zaccone · 2nd edition · Packt Publishing · 2019
dedicated to concurrency · example code ↗

asyncio Recipes: A Problem-Solution Approach

Mohamed Mustapha Tahrioui · 1st edition · Apress · 2019
dedicated to concurrency · on the shelf · publisher ↗ · example code ↗

Chapters
  • 1 Preparing for the Recipes
  • 2 Working with Event Loops
  • 3 Working with Coroutines and Async/Await
  • 4 Working with Async Generators
  • 5 Working with Async Context Manager
  • 6 Communication Between Asyncio Components
  • 7 Synchronization Between Asyncio Components
  • 8 Improving Asyncio Applications
  • 9 Working with Network Protocols
  • 10 Preventing Common Asyncio Mistakes
  • B Event Loops

Cited on: Async and await, Async functions as state machines, Async stream, Blocking the event loop, Callback, Event loop, Profiling concurrent programs, Race condition, Signals, Worker pool

Mastering Concurrency in Python

Quan Nguyen · 1st edition · Packt Publishing · 2018
dedicated to concurrency · example code ↗

Learning Concurrency in Python

Elliot Forbes · 1st edition · Packt Publishing · 2017
dedicated to concurrency · example code ↗

Distributed Computing with Python

Francesco Pierfederici · 1st edition · Packt Publishing · 2016
dedicated to concurrency

Python Parallel Programming Cookbook

Giancarlo Zaccone · 1st edition · Packt Publishing · 2015
dedicated to concurrency · on the shelf

Chapters
  • 1 Getting Started with Parallel Computing and Python
  • 2 Thread-based Parallelism
  • 3 Process-based Parallelism
  • 4 Asynchronous Programming
  • 5 Distributed Python
  • 6 GPU Programming with Python

Cited on: Communicating sequential processes, GPU computing, Lock ordering, Map-reduce, Multiprocessing, Parallelism, Publish-subscribe and broadcast, Task queue

Parallel Programming with Python

Jan Palach · 1st edition · Packt Publishing · 2014
dedicated to concurrency · on the shelf

Chapters
  • 1 Contextualizing Parallel, Concurrent, and Distributed Programming
  • 2 Designing Parallel Algorithms
  • 3 Identifying a Parallelizable Problem
  • 4 Using the threading and concurrent.futures Modules
  • 5 Using Multiprocessing and ProcessPoolExecutor
  • 6 Utilizing Parallel Python
  • 7 Distributing Tasks with Celery
  • 8 Doing Things Asynchronously

Cited on: Future and promise, Global interpreter lock, Inter-process communication, Multiprocessing, Parallel algorithms, Pipeline, Task queue

Parallel and High Performance Programming with Python

Fabio Nelli · 1st edition · Orange Education Pvt Ltd (AVA)
dedicated to concurrency · example code ↗

Python Asyncio Mastery

Jason Brownlee · SuperFastPython (self-published)
dedicated to concurrency

Advanced Python Programming: Accelerate your Python programs using proven techniques and design patterns

Quan Nguyen · 2nd edition · Packt Publishing · 2022
a concurrency chapter in a broader book · on the shelf · example code ↗

The concurrency chapters
  • 7 Implementing Concurrency
  • 8 Parallel Processing
  • 9 Concurrent Web Requests
  • 10 Concurrent Image Processing
  • 11 Building Communication Channels with asyncio
  • 12 Deadlocks
  • 13 Starvation
  • 14 Race Conditions
  • 15 The Global Interpreter Lock

Cited on: Classic synchronization problems, Global interpreter lock, Livelock, OpenMP, Starvation

Fluent Python: Clear, Concise, and Effective Programming

Luciano Ramalho · 2nd edition · O'Reilly Media · 2022
a concurrency chapter in a broader book · on the shelf · example code ↗

The concurrency chapters
  • 19 Concurrency Models in Python
  • 20 Concurrent Executors
  • 21 Asynchronous Programming

Cited on: Concurrency models, Global interpreter lock, Thread pool and executor

Effective Python: 90 Specific Ways to Write Better Python

Brett Slatkin · 2nd edition · Addison-Wesley (Pearson Education) · 2020
a concurrency chapter in a broader book · on the shelf · publisher ↗ · example code ↗

The concurrency chapters
  • 7 Concurrency and Parallelism

Cited on: Child process, Data race, Fan-out, fan-in

High Performance Python: Practical Performant Programming for Humans

Micha Gorelick, Ian Ozsvald · 2nd edition · O'Reilly Media · 2020
a concurrency chapter in a broader book · on the shelf · example code ↗

The concurrency chapters
  • 8 Asynchronous I/O
  • 9 The multiprocessing Module
  • 10 Clusters and Job Queues

Cited on: Inter-process communication, Task queue

Python High Performance

Gabriele Lanaro · 2nd edition · Packt Publishing · 2017
a concurrency chapter in a broader book · example code ↗

Python in a Nutshell

Alex Martelli, Anna Ravenscroft, Steve Holden · 3rd edition · O'Reilly Media · 2017
a concurrency chapter in a broader book · on the shelf

The concurrency chapters
  • 14 Threads and Processes
  • 18 Asynchronous Alternatives

Cited on: Child process

Mastering Python High Performance

Fernando Doglio · 1st edition · Packt Publishing · 2015
a concurrency chapter in a broader book · on the shelf

The concurrency chapters
  • 5 Multithreading versus Multiprocessing

Python Cookbook

David Beazley, Brian K. Jones · 3rd edition · O'Reilly Media · 2013
a concurrency chapter in a broader book · on the shelf · example code ↗

The concurrency chapters
  • 12 Concurrency

Cited on: Global interpreter lock, Polling

Python in Practice: Create Better Programs Using Concurrency, Libraries, and Patterns

Mark Summerfield · 1st edition · Addison-Wesley (Pearson Education) · 2013
a concurrency chapter in a broader book · on the shelf

The concurrency chapters
  • 4 High-Level Concurrency in Python

Cited on: I/O-bound and CPU-bound work