Stackless Python

Stackless Python, чи просто Stackless — версія інтерпретатора мови програмування Python, названа так через відмову від використання стандартного стека викликів мови Сі на користь власного стека. Особливістю Stackless є мікропотоки (англ. Microthreads), які дозволяють уникнути надмірної витрати системних ресурсів, що властиво стандартним потокам операційної системи[4].

Stackless Python
Тип реалізація мови програмуванняd
діалект і інтерпретатор
Версії 3.7.5-slp (20 жовтня 2019)[1]
Репозиторій github.com/stackless-dev/stackless
Операційна система Linux
Мова програмування Python[2] і C[3]
Ліцензія Python Software Foundation Licensed
Вебсайт github.com/stackless-dev/stackless/wiki

Є вдосконаленою версією інтерпретатора Python, Stackless дозволяє програмісту користуватися перевагами багатопотокового програмування без зниження продуктивності на примітивах синхронізації[5].

На додаток до стандартних можливостей Python, Stackless додає підтримку співпрограм, комунікаційних каналів і серіалізації завдань.

Мікропотоками інтерпретатор Stackless управляє самостійно. Це сприяє зменшенню додаткових витрат системних ресурсів на потоки і може значно зменшити навантаження центрального процесора в деяких ситуаціях, коли кількість потоків дуже велика.

Через значну кількості змін до вихідних текстів оригінального CPython Stackless не може встановлюватися як бібліотека або розширення інтерпретатора, тому він поширюється як окремий інтерпретатор Python.


Примітки

Джерела

  1. Cameron Laird, Introduction to Stackless Python
  2. About Stackless Python on Ohloh
  3. This is the port of Python programming language to the Sony PSP console
  4. stackless-python на GitHub

Посилання

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.