Skip to main content

A set of essential utilities for Stackless

Project description

Stackless Python by itself only provides a basic set of functionality, allowing either cooperative or preemptive scheduling of microthreads within the same operating system thread. This framework provides the additional support that anyone developing an application using Stackless Python will end up eventually implementing.

The most useful aspect is the monkey-patching support. Much of the code in the standard library does blocking operations, or perhaps is even written to make use of threads. If the monkey-patching is installed, then these blocking operations are converted to be “Stackless friendly”. Threads will actually be tasklets. Operations that block the operating system thread (and therefore the Stackless scheduler) will be converted to simply block the tasklet that is standing in for the threads that would otherwise be used.

Even if an application developer does not wish to make use of monkey-patching, they can still make use the framework provided so that they do not need to implement the standard supporting functionality themselves.

Useful supporting functionality:

  • Concurrency-related primitives corresponding to those that the standard library threading module provides for real threads.

  • Ability to put tasklets to sleep for a set amount of time.

  • Ability to specify timeouts for blocking operations.

  • Stackless compatible socket library.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stacklesslib-1.2.3.tar.gz (64.7 kB view details)

Uploaded Source

Built Distributions

stacklesslib-1.2.3-py3.6.egg (203.8 kB view details)

Uploaded Source

stacklesslib-1.2.3-py2.7.egg (200.6 kB view details)

Uploaded Source

File details

Details for the file stacklesslib-1.2.3.tar.gz.

File metadata

File hashes

Hashes for stacklesslib-1.2.3.tar.gz
Algorithm Hash digest
SHA256 60969638f80a0343d509e7bf65d3af3580838bf19a6d1cf04dd4f3ff2c178b16
MD5 941a6bee44e71d0105727225e93189e2
BLAKE2b-256 38f0c0b23a89df0c6cf364677f5fce8d02f64984c9b37e394d8e4e29a8d28794

See more details on using hashes here.

File details

Details for the file stacklesslib-1.2.3-py3.6.egg.

File metadata

File hashes

Hashes for stacklesslib-1.2.3-py3.6.egg
Algorithm Hash digest
SHA256 160547b63c3723259c34aceae7ee52f9a86f5e74d537a808ffb983804539bb9e
MD5 08c875c91e4f6cbce27797e0fd9f17a7
BLAKE2b-256 7807a8147a0f1df95b48b7ad3ac6ba21ce6191e86f6ecd8d0eec840190e79841

See more details on using hashes here.

File details

Details for the file stacklesslib-1.2.3-py2.7.egg.

File metadata

File hashes

Hashes for stacklesslib-1.2.3-py2.7.egg
Algorithm Hash digest
SHA256 c07fa453528b947c191a93bbbd6fdca25f92b8a817ca96579cfdf01699951e68
MD5 cb9611230232b8e0dfb4774bd39afb91
BLAKE2b-256 7d474fab34015189359ebb541d23cc16c0116e0aaca6767873ada3472b91eeea

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page