Expand description
Simple asynchronous task manager abstraction.
Provides an abstraction layer over executing asynchronous tasks over multiple threads, without re-creating threads, providing a speed increase over manually creating threads.
This crate aims to provide both a lower-level, more manual API which is highly configurable,
and a higher-level API via the [command-buffers
] feature.
§Features:
-
queue
: Manages tasks once they are submitted. Efficiently spreads them across threads. Prevents waiting tasks from clogging the workers, by not executing they are ready. -
task
: Abstraction layer over functions, which can be synchronous or asynchronous, take in parameters, and return a result. -
sync
: Synchronization objects which provide a way of implementing control flow. -
block
: Very simple ‘poll to completion’ awaiter. -
utils
: Some simple async utility functions. -
command buffers
: A higher-level API abstraction layer, which allows making custom tasks, as well as chaining tasks.
Modules§
Structs§
- MVSync
- Main structure for managing multithreaded asynchronous tasks.
- MVSync
Specs - A struct with configuration parameters (specifications) for MVSync.
Traits§
- MVSynced
- A marker trait for types that can be used with MVSync.