#worker-thread #command-buffer #async #task #traits #management #sync

mvsync

一个独立的异步和工作线程库,具有可扩展的特性和命令缓冲区

12 个稳定版本

1.2.0 2024 年 4 月 20 日
1.1.9 2024 年 2 月 26 日
1.1.2 2024 年 1 月 23 日
1.1.0 2023 年 10 月 1 日

#524并发

每月 47 次下载

自定义许可

84KB
1.5K SLoC

MVSync

工作线程和同步工具管理。


lib.rs:

简单的异步任务管理器抽象。

通过在多个线程上执行异步任务提供抽象层,无需重新创建线程,提供比手动创建线程更快的速度。

该crate旨在提供两种API:一种是低级、更手动且可高度配置的API,另一种是通过command-buffers功能提供的高级API。

功能

  • queue: 一旦提交任务,就管理任务。高效地将它们分配到线程中。通过不执行它们就准备好,防止等待任务阻塞工作者。

  • task: 函数的抽象层,可以是同步或异步的,接受参数并返回结果。

  • sync: 提供实现控制流程方式的同步对象。

  • block: 非常简单的 'poll to completion' 等待者。

  • utils: 一些简单的异步实用函数。

  • command buffers: 一个高级API抽象层,允许创建自定义任务以及链式任务。

依赖项

~2.3–3MB
~54K SLoC