Crate rusty_pool[][src]

Structs

Builder

A helper struct to aid creating a new ThreadPool using default values where no value was explicitly specified.

JoinHandle

Handle returned by ThreadPool::evaluate and ThreadPool::complete that allows to block the current thread and wait for the result of a submitted task. The returned JoinHandle may also be sent to the ThreadPool to create a task that blocks a worker thread until the task is completed and then does something with the result. This handle communicates with the worker thread using a oneshot channel blocking the thread when try_await_complete() is called until a message, i.e. the result of the task, is received.

ThreadPool

Self growing / shrinking ThreadPool implementation based on crossbeam’s multi-producer multi-consumer channels that enables awaiting the result of a task and offers async support.

Constants

MAX_SIZE

The absolute maximum number of workers. This corresponds to the maximum value that can be stored within half the bits of usize, as two counters (total workers and idle workers) are stored in one AtomicUsize.

Traits

Task

Trait to implement for all items that may be executed by the ThreadPool.