Skip to content

PacktPublishing/Mastering-Concurrency-in-Python

Repository files navigation

Mastering Concurrency in Python

Mastering Concurrency in Python

This is the code repository for Mastering Concurrency in Python, published by Packt.

Create faster programs using concurrency, asynchronous, multithreading, and parallel programming

What is this book about?

Python is one of the most popular programming languages out there, with numerous libraries and frameworks that facilitate high-performance computing. While concurrency and parallelism in Python behave differently than those in other programming languages, it is still in every way possible to implement Python programs that run concurrently or in parallel and make a significant improvement in execution time. Mastering Concurrency in Python serves as a comprehensive introduction to various advanced concepts in concurrent engineering and programming.

This book covers the following exciting features:

  • Understand the idea of concurrency in programming and relevant concepts such as queues, threads, parallelism.
  • Explore the core syntax and language features that enable concurrency in simple Python problems, namely through concurrent, multiprocessing, asyncio.
  • Understand correct way to implement concurrency
  • Abstract methods to keep the data consistent and application non-blocking, responsive, and reliable.
  • Analyze problems commonly faced in concurrent programming. Utilize application scaffolding to design highly scalable programs that are deeply rooted in goroutines and channels.

If you feel this book is for you, get your copy today!

https://www.packtpub.com/

Instructions and Navigations

All of the code is organized into folders. For example, Chapter01.

The code will look like the following:

async def main(url):
    async with aiohttp.ClientSession() as session:
        await download_html(session, url)

Following is what you need for this book: If you're a developer familiar who's and you Python who want to learn to build high-performance applications that scale by leveraging single-core, multi-core, or distributed concurrency, then this book is for you.

With the following software and hardware list you can run all code files present in the book (Chapter 1-19).

Software and Hardware List

Chapter Software required OS required
All chapters Python 3.6 or above Windows, macOS, and Linux
All chapters A Python Integrated Development Environment (IDE) Windows, macOS, and Linux
5 The requests module (Version 2.19 or above) Windows, macOS, and Linux
8 NumPy (Version 1.15 or above) Windows, macOS, and Linux
8 OpenCV (Version 3.4 or above) Windows, macOS, and Linux
11 Telnet Windows, macOS, and Linux
11 The aiohttp module (Version 3.4 or above) Windows, macOS, and Linux
11 The aiofiles module (Version 0.4 or above) Windows, macOS, and Linux
19 APScheduler (Version 3.5.3 or above) Windows, macOS, and Linux

We also provide a PDF file that has color images of the screenshots/diagrams used in this book. Click here to download it.

Related products

Get to Know the Author

Quan Nguyen is a Python enthusiast and data scientist. He is currently a data analysis engineer at Micron Technology, Inc. With a strong background in mathematics and statistics, Quan is interested in the fields of scientific computing and machine learning. With data analysis being his focus, Quan also enjoys incorporating technology automation into everyday tasks through programming.

Quan's passion for Python programming has led him to be heavily involved in the Python community. He started as a primary contributor for the book Python for Scientists and Engineers and various open source projects on GitHub. Quan is also a writer for the Python Software Foundation and an occasional content contributor for DataScience.com (part of Oracle).

Suggestions and Feedback

Click here if you have any feedback or suggestions.

Download a free PDF

If you have already purchased a print or Kindle version of this book, you can get a DRM-free PDF version at no cost.
Simply click on the link to claim your free PDF.

https://packt.link/free-ebook/9781789343052