Pitón de Stackless

El Pitón de Stackless o Stackless, es un intérprete del lenguaje de programación del Pitón, así llamado porque evita según la pila de llamada de C para su propia pila. El rasgo más prominente de Stackless es microhilos, que evitan la mayor parte de los elevados asociados con hilos del sistema operativo habituales. Además de rasgos del Pitón, Stackless también añade el apoyo a coroutines, canales de comunicación y adaptación de la tarea.

Los microhilos de Stackless son manejados por el intérprete de la lengua él mismo, no el sistema operativo kernel—context la programación de la tarea y conmutación se hace puramente en el intérprete (éstos también así se consideran como una forma del hilo verde). Esto evita muchos de los gastos generales de hilos, porque ningún modo que cambia entre modo del usuario y modo del grano se tiene que hacer y puede reducir considerablemente la carga de la CPU en algunas situaciones de coincidencia alta.

Debido al número considerable de cambios de la fuente, el Pitón de Stackless no se puede instalar en una instalación del Pitón preexistente como una extensión o biblioteca. Es en cambio una distribución del Pitón completa en sí mismo. La mayoría de rasgos de Stackless también se ha puesto en práctica en PyPy, un intérprete del Pitón de autorecepción y compilador JIT.

Usar

Aunque Stackless entero sea una distribución separada, su funcionalidad de conmutación ha sido con éxito envasada como una extensión CPython llamó greenlet. Es usado por varias bibliotecas (p.ej gevent) para proporcionar un "ensartamiento verde" solución a CPython.

Stackless se usa extensivamente en la realización de Eva Online macizamente multijugador juego en línea para asegurar la coincidencia, así como en la plataforma del correo de IronPort. La segunda Vida también comienza a usarlo.

Véase también

Enlaces externos



Buscar