Skip to main content

Lightweight in-process concurrent programming

Project description

The greenlet package is a spin-off of Stackless, a version of CPython that supports micro-threads called “tasklets”. Tasklets run pseudo-concurrently (typically in a single or a few OS-level threads) and are synchronized with data exchanges on “channels”.

A “greenlet”, on the other hand, is a still more primitive notion of micro-thread with no implicit scheduling; coroutines, in other words. This is useful when you want to control exactly when your code runs. You can build custom scheduled micro-threads on top of greenlet; however, it seems that greenlets are useful on their own as a way to make advanced control flow structures. For example, we can recreate generators; the difference with Python’s own generators is that our generators can call nested functions and the nested functions can yield values too. Additionally, you don’t need a “yield” keyword. See the example in tests/test_generator.py.

Greenlets are provided as a C extension module for the regular unmodified interpreter.

Greenlets are lightweight coroutines for in-process concurrent programming.

Who is using Greenlet?

There are several libraries that use Greenlet as a more flexible alternative to Python’s built in coroutine support:

Getting Greenlet

The easiest way to get Greenlet is to install it with pip or easy_install:

pip install greenlet
easy_install greenlet

Source code archives and windows installers are available on the python package index at http://pypi.python.org/pypi/greenlet

The source code repository is hosted on github: https://github.com/python-greenlet/greenlet

The master branch - i.e. the development version - can be installed directly by running one of the following:

pip install greenlet==dev
easy_install greenlet==dev

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

greenlet-0.4.1.zip (75.7 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

greenlet-0.4.1.win-amd64-py3.3.exe (238.2 kB view details)

Uploaded Source

greenlet-0.4.1.win-amd64-py2.7.exe (239.8 kB view details)

Uploaded Source

greenlet-0.4.1.win32-py3.3.exe (206.1 kB view details)

Uploaded Source

greenlet-0.4.1.win32-py2.7.exe (211.4 kB view details)

Uploaded Source

greenlet-0.4.1.win32-py2.6.exe (211.6 kB view details)

Uploaded Source

greenlet-0.4.1.win32-py2.5.exe (75.4 kB view details)

Uploaded Source

greenlet-0.4.1.win32-py2.4.exe (76.6 kB view details)

Uploaded Source

File details

Details for the file greenlet-0.4.1.zip.

File metadata

  • Download URL: greenlet-0.4.1.zip
  • Upload date:
  • Size: 75.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for greenlet-0.4.1.zip
Algorithm Hash digest
SHA256 ea671592f8460541286b133ed46a6cf5311a6b75051cc31b53e2bc38992b775a
MD5 c2deda75bdda59c38cae12a77cc53adc
BLAKE2b-256 c69adbb2c9acbde5f2f48e94b9eeacfda511373dfb5534aae8679c06d485419f

See more details on using hashes here.

File details

Details for the file greenlet-0.4.1.win-amd64-py3.3.exe.

File metadata

File hashes

Hashes for greenlet-0.4.1.win-amd64-py3.3.exe
Algorithm Hash digest
SHA256 54d2c121a02a97d2c9c96bd838bb59479b0fa85918e2be6f0243cf11434c77ca
MD5 bdee3d765b7c25e1cdff0277a9290cb0
BLAKE2b-256 5a55952b965e559914f1166f4934084d41945a8e62a109bc33ab032c81c44056

See more details on using hashes here.

File details

Details for the file greenlet-0.4.1.win-amd64-py2.7.exe.

File metadata

File hashes

Hashes for greenlet-0.4.1.win-amd64-py2.7.exe
Algorithm Hash digest
SHA256 4d5387ea43d77dcd73fa491848f315120acb4b0a6c0162394159a9c236d76c59
MD5 45e9f53cbcb6db5650d3e486aca5641a
BLAKE2b-256 0a89c8ff5eb44845a096f35627b6de6114f615fa8787a4e28a22bf5fcbdf42fd

See more details on using hashes here.

File details

Details for the file greenlet-0.4.1.win32-py3.3.exe.

File metadata

File hashes

Hashes for greenlet-0.4.1.win32-py3.3.exe
Algorithm Hash digest
SHA256 c602688836a41074bae164a78f398caf926ee4a1e326ff427e6acf57cac961f4
MD5 73b47fb98476f8266e686fb60fc87db2
BLAKE2b-256 2f2f906d06e7e52fc1bafa836874741d98ea7a7d34a2e17aa815bd5cce0e0345

See more details on using hashes here.

File details

Details for the file greenlet-0.4.1.win32-py2.7.exe.

File metadata

File hashes

Hashes for greenlet-0.4.1.win32-py2.7.exe
Algorithm Hash digest
SHA256 3594f0b14fea477a87b168c1eb387057ecdb71a476c08efec3dc9f0b68a69758
MD5 8f12784e041be3d795fb2d6771b3af76
BLAKE2b-256 f57455fb616c174274fe3f8e78439f6adbc2337fb816b339da1c3ea97404aefe

See more details on using hashes here.

File details

Details for the file greenlet-0.4.1.win32-py2.6.exe.

File metadata

File hashes

Hashes for greenlet-0.4.1.win32-py2.6.exe
Algorithm Hash digest
SHA256 c4cd7d2145b32ac32cda260a5acaee4f7c9e00783976366c8ca7e9b02f016016
MD5 8b5ba1e8f3b4af3718e991cb8a15b77c
BLAKE2b-256 fdbad2e1c48b25d7cceddcbe4a8f4c6a16dd6c6a65e1fd1ccbfc15c2d326fa26

See more details on using hashes here.

File details

Details for the file greenlet-0.4.1.win32-py2.5.exe.

File metadata

File hashes

Hashes for greenlet-0.4.1.win32-py2.5.exe
Algorithm Hash digest
SHA256 9d4ec92d78bd081fb5a45ac16a22e88f0377bb8799d4cca13e690f73f845cc2d
MD5 d312f74d6ad3c553065b306f830dd8e1
BLAKE2b-256 bfc987715a07a1b4650ca089de19a5acd27c9e2841eea6a9ba06f7f86a06b1ad

See more details on using hashes here.

File details

Details for the file greenlet-0.4.1.win32-py2.4.exe.

File metadata

File hashes

Hashes for greenlet-0.4.1.win32-py2.4.exe
Algorithm Hash digest
SHA256 21e52701de093460a48082f4ae349f1e8249c5017c176dc0e32465e1b81604a2
MD5 67d4b3b9d257697c8acc816ae45fd31d
BLAKE2b-256 9caae002addd3f16cdd6acdb00fab8f40809efd10387900fbd3add6b869d5d67

See more details on using hashes here.

Supported by

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