stream-consumer-task

Crates.iostream-consumer-task
lib.rsstream-consumer-task
version0.1.0
sourcesrc
created_at2024-01-21 17:59:18.861736
updated_at2024-01-21 17:59:18.861736
descriptionStart asynchronous task in background to consume stream
homepage
repositoryhttps://github.com/leroyguillaume/stream-consumer-task
max_upload_size
id1107777
size64,308
Guillaume Leroy (leroyguillaume)

documentation

https://docs.rs/stream-consumer-task

README

stream-consumer-task

Start asynchronous task in background to consume stream.

It can be useful if your application consumes several RabbitMQ queues or Kafka Topics.

Getting started

Add to your Cargo.toml:

[dependencies]
...
stream-consumer-task = "0"
...

You can look examples to see how to use the library.

Architecture

The task takes two arguments: a stream and an item handler.

Each time a new item is available in the stream, the consumer spawns a new task to handle it.

The item handler takes two arguments: the item from the stream and a Receiver<()> to handle graceful shutdown.

If the consumer is stopped, a stop signal is sent to all tasks and it will wait them termination.

Contributing

See CONTRIBUTING.md.

Commit count: 0

cargo fmt