Programmer’s Python: Async -

Threads, processes, asyncio & more

Errata: None

Program Listings


ISBN-13: 978-1871962741

Buy from: Amazon

Python has more flexibility than most modern programming languages which makes it a very easy language to get started with, but it has a problem – the GIL or Global Interpreter Lock. This makes getting to grips with Python Async more demanding than other languages. You can’t simply take what you know about threads or processes and hope that they just work with Python.

Programmer's Python: Async is part of a set of Something Completely Different books that look at what makes Python special and sets it apart from other programming languages. This volume is about asynchronous programming, something that is is hard to get right - but well worth the trouble. An application that doesn’t make use of async code is wasting a huge amount of the machine’s potential. Whenever the program interacts with the outside world it has to wait for very, very, slow humans or even very slow communications to do something. If your code isn’t asynchronous then it just waits for what might seem like years from the processor’s point of view – remember a processor can execute around 10 million instructions in a second. If your program has to wait for even a fraction of a second that’s thousands of instructions wasted.

Python has some remarkably good facilities for asynchronous programming. The latest is the asyncio module which is receiving a lot of attention at the moment, but the story starts earlier. Python has modules that let you work with threads and processes in sophisticated ways. These are the foundation on which asyncio is built and they are covered in depth along with futures, tasks and schedulers. The final three chapters are devoted to asyncio and attempt, hopefully successfully, to make practical sense of a very complicated module. This is the book you need to understand all the options, trade-offs and gotchas.

Mike James has a BSc in Physics, an MSc in Mathematics and a PhD in Computer Science and in a long career as a programmer he has mastered many programming languages. He is the founder and chief editor of I-Programmer, the online magazine written by programmers for programmers and the author of dozens of books. As well as Programmer’s Python: Everything Is An Object, Second Edition and Programmer’s Python: Everything Is Data, his recent books include Deep C#, JavaScript JemsProgrammer’s Guide to KotlinProgrammer’s Guide To Theory and The Trick Of The Mind: Programming and Computational Thought.


  • Publisher ‏ : ‎ I/O Press (October 5, 2022)
  • Language ‏ : ‎ English
  • Hardcover ‏ : ‎ 300 pages
  • ISBN-10 ‏ : ‎ 1871962773
  • ISBN-13 ‏ : ‎ 978-1871962772
  • Item Weight ‏ : ‎ 1.45 pounds
  • Dimensions ‏ : ‎ 7 x 0.87 x 10 inches


  • Publisher ‏ : ‎ I/O Press (October 5, 2022)
  • Language ‏ : ‎ English
  • Paperback ‏ : ‎ 300 pages
  • ISBN-10 ‏ : ‎ 1871962765
  • ISBN-13 ‏ : ‎ 978-1871962765
  • Item Weight ‏ : ‎ 1.45 pounds
  • Dimensions ‏ : ‎ 7 x 0.68 x 10 inches


  • ASIN ‏ : ‎ B0BHDWZY62
  • Publisher ‏ : ‎ I/O Press; 1st edition (October 4, 2022)
  • Publication date ‏ : ‎ October 4, 2022
  • Language ‏ : ‎ English
  • File size ‏ : ‎ 4958 KB