An open API service indexing awesome lists of open source software.

https://github.com/tikv/yatp

Yet another thread pool in rust for both callbacks or futures.
https://github.com/tikv/yatp

Last synced: 2 months ago
JSON representation

Yet another thread pool in rust for both callbacks or futures.

Awesome Lists containing this project

README

        

# yatp
Yet another thread pool in Rust that is adaptive, responsive and generic.

_It is still a work in progress._

[![Build & Test Status](https://github.com/tikv/yatp/actions/workflows/test.yaml/badge.svg?branch=master)](https://github.com/tikv/yatp/actions/workflows/test.yaml)

## Features

* **Adaptive**: Yatp adjusts the number of working threads automatically. Under
light workloads, unnecessary context switches are greatly reduced.

* **Responsive**: Yatp supports different kinds of task queues with advanced
scheduling algorithms like [multi-level feedback queue][MLFQ].

* **Generic**: Yatp is easily adapted to various tasks. Simple callbacks and
[Future] are built-in supported.

[MLFQ]: https://en.wikipedia.org/wiki/Multilevel_feedback_queue
[Future]: https://doc.rust-lang.org/stable/std/future/trait.Future.html