py314-greenlet (python/py-greenlet) Updated: 2 weeks, 5 days ago Add to my watchlist

Lightweight in-process concurrent programming

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 test_generator.py. Greenlets are provided as a C extension module for the regular unmodified interpreter.

Version: 3.3.0 License: MIT and PSF GitHub
Reset

44 build(s) found
Builder Build Number Start Time Elapsed Time Watcher Build Status
11.arm64 128419 2025-12-07 18:42:44 0:00:16 48851 build successful
15 44125 2025-12-07 8:19:14 0:00:22 13771 build successful
12 145386 2025-12-06 12:33:07 0:01:04 52325 build successful
26.arm64 22566 2025-12-06 11:21:50 0:00:17 2672 build successful
13.arm64 93593 2025-12-06 10:43:17 0:00:15 37840 build successful
14 71683 2025-12-06 10:42:49 0:00:22 26296 build successful
15.arm64 32278 2025-12-06 7:49:26 0:00:13 12964 build successful
10.14 246524 2025-12-06 1:47:39 0:01:17 84367 build successful
13 99726 2025-12-06 0:51:56 0:00:36 38054 build successful
10.13 272872 2025-12-06 0:11:29 0:00:52 93736 build successful
12.arm64 156250 2025-12-05 21:42:26 0:00:16 52058 build successful
14.arm64 67078 2025-12-05 21:08:13 0:00:16 25930 build successful
10.15 223281 2025-12-05 15:21:06 0:01:12 73480 build successful
10.6 216429 2025-12-05 13:08:33 0:00:57 75647 build successful
10.8 221532 2025-12-05 13:08:21 0:00:54 73342 build successful
10.11 305629 2025-12-05 13:08:15 0:00:50 103019 build successful
10.7 236809 2025-12-05 13:07:52 0:00:51 75312 build successful
10.10 314003 2025-12-05 13:07:04 0:00:55 102871 build successful
10.9 322058 2025-12-05 13:06:18 0:00:46 102546 build successful
11 195614 2025-12-05 13:05:05 0:01:21 63450 build successful
10.12 316026 2025-12-05 13:04:37 0:00:50 101756 build successful
10.6.x86_64 253585 2025-12-05 13:04:22 0:00:49 75713 build successful
26.arm64 21777 2025-11-29 0:33:55 0:00:24 2382 build successful
11.arm64 127916 2025-11-28 8:52:38 0:00:16 48562 build successful
15.arm64 31810 2025-11-27 10:11:04 0:00:15 12674 build successful
14.arm64 66503 2025-11-27 9:34:13 0:00:18 25641 build successful
15 43656 2025-11-27 9:32:59 0:00:30 13482 build successful
13 99212 2025-11-27 6:37:05 0:00:34 37765 build successful
12 144716 2025-11-26 16:40:11 0:01:10 52036 build successful
10.14 245898 2025-11-26 16:21:14 0:01:07 84078 build successful
10.13 272207 2025-11-26 16:05:30 0:00:43 93447 build successful
12.arm64 155837 2025-11-26 15:50:01 0:00:19 51769 build successful
10.15 222631 2025-11-26 15:46:33 0:01:11 73191 build successful
13.arm64 93027 2025-11-26 15:40:27 0:00:17 37551 build successful
11 194964 2025-11-26 14:55:17 0:01:36 63161 build successful
14 71188 2025-11-26 14:53:51 0:00:29 26007 build successful
10.6 215695 2025-11-26 14:20:08 0:02:49 75358 build successful
10.11 305001 2025-11-26 14:20:03 0:03:16 102730 build successful
10.7 236050 2025-11-26 14:19:04 0:03:48 75023 build successful
10.8 220808 2025-11-26 14:18:29 0:02:58 73053 build successful
10.12 315352 2025-11-26 14:18:21 0:00:46 101467 build successful
10.10 313244 2025-11-26 14:18:19 0:04:39 102582 build successful
10.6.x86_64 252789 2025-11-26 14:18:09 0:01:48 75424 build successful
10.9 321317 2025-11-26 14:18:06 0:02:35 102257 build successful