Event loop and promises.


Keywords
event, async, promise
License
MIT

Documentation

Good Job Event Loop

Build Status crates.io

documentation

EXPERIMENTAL! UNSTABLE! A WORK IN PROGRESS!

GJ is a port of the KJ event loop into Rust. Its central abstraction is the Promise<T,E> struct which is similar to Javascript's Promise class.

Promises that are chained recursively can be thought of as lightweight stackless tasks. A GJ event loop allows you to execute many such tasks on a single operating system thread and to safely share mutable data between them without any need for mutexes or atomics.

For a completion-based I/O interface built on top of GJ, see gjio.