Внутри CPYTHON: гид по интерпретатору Python
Энтони Шоу · «Питер» · 2023 г. · 352 с.
План по чтению | Books About Concurrency In Python
http://library.hazadus.ru/books/46/details/ Энтони Шоу - Внутри CPython (2023).pdf
Abstract
CPython, самая популярная реализация Python, абстрагируется от сложностей ОС и предоставляет платформу для создания масштабируемых и высокопроизводительных приложений. Каждому python-разработчику на какой-то стадии необходимо будет узнать, как работает CPython. Это позволит в полной мере использовать его мощь и оптимизировать приложения. Вы разберетесь с основными концепциями внутреннего устройства CPython и научитесь: читать исходный код интерпретатора CPython и свободно ориентироваться в нем; вносить изменения в синтаксис Python и компилировать их в вашу собственную версию CPython; понимать внутреннюю реализацию таких структур, как списки, словари и генераторы; управлять памятью CPython; масштабировать код Python за счет параллелизма и конкурентного выполнения; дополнять базовые типы новой функциональностью; выполнять наборы тестов; профилировать и проводить бенчмарк Python-кода и исполнительной среды; отлаживать код C и Python на профессиональном уровне; изменять или обновлять компоненты библиотеки CPython, чтобы они могли использоваться в будущих версиях.
Книга на сайте издательства Питер
10. Параллелизм и конкурентность
В CPython включены четыре модели в соответствующих модулях:
Субинтерпретаторы
Создание субинтерпретаторов (subinterpreters) требует более низкие дополнительные затраты, чем у многопроцессных решений, и позволяет иметь отдельную блокировку GIL для каждого субинтерпретатора. В конце концов, GIL — глобальная блокировка интерпретатора.
Выводы по главе: понравилась табличка, приведенная выше, и пример использования fork()
в программе на С. Прикольно, что рассказано про subinterpreters
, и есть небольшой пример её использования. Правда, пояснения к примеру весьма краткие. В целом, глава написана довольно бестолково. Читать её для изучения темы с нуля было бы плохой затеей.
📂 Reading | Последнее изменение: 11.08.2024 21:37