Skip to main content

Module queue

Module queue 

Source
Expand description

The Queue contract every driver implements.

Dyn-compatible on purpose: an application picks its driver at boot and the rest of the framework holds an Arc<dyn Queue> without knowing which one it got. That is why every method returns a BoxFuture rather than being an async fn — async fn in a trait is not dyn-compatible — and why the trait speaks in QueuedJob rather than in a generic J: Job.

The generic conveniences that cannot be dyn-compatible (dispatch, which takes a concrete job type) live in QueueExt, blanket-implemented for every Queue including dyn Queue, so callers never notice the split.

Traits§

Queue
A queue backend.
QueueExt
The conveniences that take a concrete job type, and so cannot live on a dyn-compatible trait. Blanket-implemented, including for dyn Queue.

Functions§

stats
The JSON body a dashboard or queue:status shows.