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.0.zip (72.8 kB view details)

Uploaded Source

Built Distributions

greenlet-0.4.0.win-amd64-py3.3.exe (239.4 kB view details)

Uploaded Source

greenlet-0.4.0.win-amd64-py3.2.exe (241.4 kB view details)

Uploaded Source

greenlet-0.4.0.win-amd64-py3.1.exe (241.7 kB view details)

Uploaded Source

greenlet-0.4.0.win-amd64-py2.7.exe (241.0 kB view details)

Uploaded Source

greenlet-0.4.0.win32-py3.3.exe (207.3 kB view details)

Uploaded Source

greenlet-0.4.0.win32-py3.2.exe (212.5 kB view details)

Uploaded Source

greenlet-0.4.0.win32-py3.1.exe (212.8 kB view details)

Uploaded Source

greenlet-0.4.0.win32-py2.7.exe (212.6 kB view details)

Uploaded Source

greenlet-0.4.0.win32-py2.6.exe (212.8 kB view details)

Uploaded Source

greenlet-0.4.0.win32-py2.5.exe (76.6 kB view details)

Uploaded Source

greenlet-0.4.0.win32-py2.4.exe (76.5 kB view details)

Uploaded Source

greenlet-0.4.0-py3.3-win-amd64.egg (13.6 kB view details)

Uploaded Egg

greenlet-0.4.0-py3.3-win32.egg (12.8 kB view details)

Uploaded Egg

greenlet-0.4.0-py3.2-win-amd64.egg (13.6 kB view details)

Uploaded Egg

greenlet-0.4.0-py3.2-win32.egg (12.9 kB view details)

Uploaded Egg

greenlet-0.4.0-py3.1-win-amd64.egg (13.8 kB view details)

Uploaded Egg

greenlet-0.4.0-py3.1-win32.egg (13.1 kB view details)

Uploaded Egg

greenlet-0.4.0-py2.7-win-amd64.egg (13.6 kB view details)

Uploaded Egg

greenlet-0.4.0-py2.7-win32.egg (12.9 kB view details)

Uploaded Egg

greenlet-0.4.0-py2.6-win32.egg (13.1 kB view details)

Uploaded Egg

greenlet-0.4.0-py2.5-win32.egg (11.6 kB view details)

Uploaded Egg

greenlet-0.4.0-py2.4-win32.egg (11.5 kB view details)

Uploaded Egg

File details

Details for the file greenlet-0.4.0.zip.

File metadata

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

File hashes

Hashes for greenlet-0.4.0.zip
Algorithm Hash digest
SHA256 3f52af03bf8a89045fc159c6a76d5642349b30fb41c3df1a22b12bbd3920b1ee
MD5 87887570082caadc08fb1f8671dbed71
BLAKE2b-256 b0d4a3c22f7fcc63e2c3a52e29ba48ffa51dab4a80bd0db3dbdccb8fd0690c25

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for greenlet-0.4.0.win-amd64-py3.3.exe
Algorithm Hash digest
SHA256 b1a60b475f0a243336425984b5ce7770dd67e9b8a15da2a554f55de1c274ef09
MD5 af96a2e90a0a13556f351e733c64211b
BLAKE2b-256 3de410e9b67b7ea903b6c5b80c2c2494c0f16aeee0c15a4d599aa450dc8883ef

See more details on using hashes here.

File details

Details for the file greenlet-0.4.0.win-amd64-py3.2.exe.

File metadata

File hashes

Hashes for greenlet-0.4.0.win-amd64-py3.2.exe
Algorithm Hash digest
SHA256 e6bf41bcca1aec12b6db31a03ee4d08721da7cb6d98e88b970baca5c1f72f006
MD5 16924fd31ed107edd71bcb8741a5fa60
BLAKE2b-256 4e21c139a5ef6c1ecde32f1c1611185145646a5b36d0e572a1738e2036eb8d45

See more details on using hashes here.

File details

Details for the file greenlet-0.4.0.win-amd64-py3.1.exe.

File metadata

File hashes

Hashes for greenlet-0.4.0.win-amd64-py3.1.exe
Algorithm Hash digest
SHA256 f498592dafd0018bb8512e50b1b39d4e20108de2fe119a46887306b14d3d39ce
MD5 6b84e0e445be6e188733e9096f544fee
BLAKE2b-256 41942a3954c50a5e5cc55a72128e2687f99385c842a98ee5788a229aefacea51

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for greenlet-0.4.0.win-amd64-py2.7.exe
Algorithm Hash digest
SHA256 41ce8be83ec2f9d5b10b0c809297f96a1892806c91a53fa55d6cdd332e8f2929
MD5 3f8e62c2ee68e26301105fe9caba93c3
BLAKE2b-256 f9a8f53dcee64a8733e1a8f11a85a1e012f39f72b52e158201908a388cba7868

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for greenlet-0.4.0.win32-py3.3.exe
Algorithm Hash digest
SHA256 f16f0a3981316d74315f1bd499bf9b4bf44120702805f1beec5a742160b3e44f
MD5 9bc847df2e5e1a2250511886231edd50
BLAKE2b-256 19cda992ef82fb505102682e00453815c6c88d6631f80f97a9d4f8958fec2f4d

See more details on using hashes here.

File details

Details for the file greenlet-0.4.0.win32-py3.2.exe.

File metadata

File hashes

Hashes for greenlet-0.4.0.win32-py3.2.exe
Algorithm Hash digest
SHA256 5295c682d76c98165ff089c019012a615ed8e647e146c38de3e62e1d1bb4a744
MD5 de0af24c0ef455020afdc4e966e88c68
BLAKE2b-256 f2aec929444fbee174ad347e342ef2f8f9f6594781e9a8fc9f3f957df7219fb0

See more details on using hashes here.

File details

Details for the file greenlet-0.4.0.win32-py3.1.exe.

File metadata

File hashes

Hashes for greenlet-0.4.0.win32-py3.1.exe
Algorithm Hash digest
SHA256 343c94e400806856b11cd142c6d8649822a8a7c72cb2f919ade7533c92c7689d
MD5 aebd7b801c0b56ad39a32ee120c50825
BLAKE2b-256 e913843756f821cfc982ccc442ba692b3a76dfa04959e736f022516e9adf07fe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for greenlet-0.4.0.win32-py2.7.exe
Algorithm Hash digest
SHA256 1e22fb77b535a351e482cc2a674bb0e47ec05149dc3120daa63ea7375557691a
MD5 910896116b1e4fd527b8afaadc7132f3
BLAKE2b-256 6cf75d558cd6a96c52e384879185660dae2f647f02b3477e2e515a42f46ce694

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for greenlet-0.4.0.win32-py2.6.exe
Algorithm Hash digest
SHA256 51274b73114bce7da3f60409554995fccd4c5939773e8f6c49922e56d175ef62
MD5 40f250134cd2eb05b8a6ef1fd85d2f33
BLAKE2b-256 d30cafde17226416b6ec871046c7bdb56fba7b2d9cd0bf6c5f0e13df2b82b9f0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for greenlet-0.4.0.win32-py2.5.exe
Algorithm Hash digest
SHA256 174f508f8e08f07fbe0df22c315c5ec3fceff5521f0cfa6044879c61dcabd362
MD5 b3907e10066be3a3213e89178767855c
BLAKE2b-256 0d4417b5ddbd20e4546c8d30a9336506836f825af331d3bbb6424873360b3762

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for greenlet-0.4.0.win32-py2.4.exe
Algorithm Hash digest
SHA256 23ec4de17abe5654ab241bd8e8cad2a41e7fa36f5084716d1d0632757da032e4
MD5 a9c0548b6372a859f1013c99fa8c0d22
BLAKE2b-256 8d9411ffe947cf7360c77a4cf9c50405712213d1a307f07a632dd697d3359bf1

See more details on using hashes here.

File details

Details for the file greenlet-0.4.0-py3.3-win-amd64.egg.

File metadata

File hashes

Hashes for greenlet-0.4.0-py3.3-win-amd64.egg
Algorithm Hash digest
SHA256 957983a44534e1544c756b7522be8cf77f2c0859b543b49a958d5388cdcba139
MD5 f08d5ad2be5f2c669d4c66eb332c4dba
BLAKE2b-256 d4dfa3f9183e80d28b3bcd035b04e7d4d2b3ca3413cfe132f4252e065720af53

See more details on using hashes here.

File details

Details for the file greenlet-0.4.0-py3.3-win32.egg.

File metadata

File hashes

Hashes for greenlet-0.4.0-py3.3-win32.egg
Algorithm Hash digest
SHA256 3ebabf82354d86d20ec6563d6f3823c3a02a8b52f317df18e233a961f2e30b40
MD5 401f4be1c998d4f274f0f19caa3c8772
BLAKE2b-256 6ed1e844b846bce04eeba67bfe24c7e286fd750652fbca184d177b123ce8115f

See more details on using hashes here.

File details

Details for the file greenlet-0.4.0-py3.2-win-amd64.egg.

File metadata

File hashes

Hashes for greenlet-0.4.0-py3.2-win-amd64.egg
Algorithm Hash digest
SHA256 2dc1d676c68cc356dd9b96e9a6151f6c80d10b872106c0c9d6e01eba407bb67a
MD5 f306474ce2f4e9cde21d2057ea9aff87
BLAKE2b-256 148cda47d8db994125fa8902c76020f36c2d0db7ae36663de92b3f334ce27fef

See more details on using hashes here.

File details

Details for the file greenlet-0.4.0-py3.2-win32.egg.

File metadata

File hashes

Hashes for greenlet-0.4.0-py3.2-win32.egg
Algorithm Hash digest
SHA256 67e3577e03ca730f8991f9a8ce5369d9862f98771e4290e89d01fc015397740d
MD5 b3132f852771903ccaaf2cd0755bb169
BLAKE2b-256 219744f77ff663ac221ee6c2f37f17550a61da7a08745b5e1cd8e19a6866f1ac

See more details on using hashes here.

File details

Details for the file greenlet-0.4.0-py3.1-win-amd64.egg.

File metadata

File hashes

Hashes for greenlet-0.4.0-py3.1-win-amd64.egg
Algorithm Hash digest
SHA256 a74364169a35f9cd33fbe007944b212ed0be0a015a9786a9883de9a30330f22e
MD5 a7d0133b191f9fe3cd3d58533ea3273e
BLAKE2b-256 bbef8ed9e3b49cc7ec0d9c296b212626ccbe381491580d1e0fbdba7cb8be4bc3

See more details on using hashes here.

File details

Details for the file greenlet-0.4.0-py3.1-win32.egg.

File metadata

File hashes

Hashes for greenlet-0.4.0-py3.1-win32.egg
Algorithm Hash digest
SHA256 298765c403d067c5098557eb6a2f66207d094a514b3a3d8401780ed2fe6cc60d
MD5 9d8a788fe9045a575f7e6457bbd750b6
BLAKE2b-256 53ed5913dbbdaa25577394dc784751b0c3d98fec86bba712b1860b03d6e82d1d

See more details on using hashes here.

File details

Details for the file greenlet-0.4.0-py2.7-win-amd64.egg.

File metadata

File hashes

Hashes for greenlet-0.4.0-py2.7-win-amd64.egg
Algorithm Hash digest
SHA256 a91228aff1cb0404b4c98230c792c59f74d60f6aa7d2572e33d1863b1233d74b
MD5 e295950b690758ce72f2091b40862fa3
BLAKE2b-256 017c85bf938045e59b3576f87ea8802c1544179b4cfc9b5b9d450895b788d770

See more details on using hashes here.

File details

Details for the file greenlet-0.4.0-py2.7-win32.egg.

File metadata

File hashes

Hashes for greenlet-0.4.0-py2.7-win32.egg
Algorithm Hash digest
SHA256 b718cbb35f28621c9082d7acdae16b4004b801493bd9c75c72f99990876716d4
MD5 21cf9a46067ae25d225e66d47e0b9621
BLAKE2b-256 3f75763e2438e1ad5bc175beee3837c05d907cd94e6f48985e4b8fcf3cc4874b

See more details on using hashes here.

File details

Details for the file greenlet-0.4.0-py2.6-win32.egg.

File metadata

File hashes

Hashes for greenlet-0.4.0-py2.6-win32.egg
Algorithm Hash digest
SHA256 dcafb7c3bb6ad34e3d2bfcab83fd4fde9683aa613e14cb7cad17554782b645ba
MD5 86584a50fc4ebc193832f1a40d49b626
BLAKE2b-256 3c961bcf51c24263b0d179162f7ab687b6ca0ea0701b9b667802d96a1fcb0e73

See more details on using hashes here.

File details

Details for the file greenlet-0.4.0-py2.5-win32.egg.

File metadata

File hashes

Hashes for greenlet-0.4.0-py2.5-win32.egg
Algorithm Hash digest
SHA256 0dbb9875663d6a2aa0189f0f2a5f60850d598a6e4f0f083aa4ae505f50ce3ca0
MD5 fac0a205520d47051f3a09ef3ad47a9f
BLAKE2b-256 19e1d470ce73f6995157eaee240883ffd75a0ed730390a45d9073dbf747c0635

See more details on using hashes here.

File details

Details for the file greenlet-0.4.0-py2.4-win32.egg.

File metadata

File hashes

Hashes for greenlet-0.4.0-py2.4-win32.egg
Algorithm Hash digest
SHA256 796a99a10e4c94c4185da0b1860002e20c76df6c0c07371fbba0d4d23e990bb9
MD5 0c0f0d7e80185f8d39938e2708b5e05c
BLAKE2b-256 73f2d1ad1c5f9deba281f359aebc0dadce10a03c2a371c456d7bd4a2afdeda69

See more details on using hashes here.

Supported by

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