Название: Using Asyncio in Python: Understanding Python's Asynchronous Programming Features, First Edition Автор: Caleb Hattingh Издательство: O’Reilly Media, Inc. Год: 2020 Страниц: 166 Язык: английский Формат: pdf (true), epub Размер: 10.1 MB
If you’re among the Python developers put off by asyncio’s complexity, it’s time to take another look. Asyncio is complicated because it aims to solve problems in concurrent network programming for both framework and end-user developers. The features you need to consider are a small subset of the whole asyncio API, but picking out the right features is the tricky part. That’s where this practical book comes in.
Veteran Python developer Caleb Hattingh helps you gain a basic understanding of asyncio’s building blocks—enough to get started writing simple event-based programs. You’ll learn why asyncio offers a safer alternative to preemptive multitasking (threading) and how this API provides a simpleway to support thousands of simultaneous socket connections.
Python 3.4 introduced the asyncio library, and Python 3.5 produced the async and await keywords to use it palatably. These new additions allow so-called asynchronous programming.
All of these new features, which I’ll refer to under the single name Asyncio, have been received by the Python community somewhat warily; a segment of the community seems to see them as complex and difficult to understand. This view is not limited to beginners: several high-profile contributors to the Python community have expressed doubts about the complexity of the Asyncio API in Python, and educators in the community have expressed concern about how best to teach Asyncio to students.
Most people with a few years’ experience with Python have used threads before, and even if you haven’t, you are still likely to have experienced blocking. My goal with this book is to give you a basic understanding of why these new features have been introduced and how to use them in your own projects. More specifically, I aim to provide the following:
• A critical comparison of asyncio and threading for concurrent network programming • An understanding of the new async/await language syntax • A general overview of the new asyncio standard library features in Python • Detailed, extended case studies with code, showing how to use a few of the more popular Asyncio-compatible third-party libraries
We’ll begin with a story that illustrates the shift in thinking that must accompany a transition from threaded to async programming. Then, we’ll take a look at the changes that were made in the Python language itself to accommodate async programming. Finally, we’ll explore some of the ways in which these new features can be used most effectively.
Скачать Using Asyncio in Python: Understanding Python's Asynchronous Programming Features, First Edition
|