2个版本
0.1.1 | 2024年7月4日 |
---|---|
0.1.0 | 2024年7月4日 |
#842 in 异步
每月 34 次下载
28KB
532 行
egui_task_manager
灵活管理异步任务的方法。
示例
请参阅 examples/counter
。
lib.rs
:
提供管理异步任务的方法。
请参阅 examples/counter
获取更多信息。
TaskManager
TaskManager
是必须在您的应用程序状态中保存的核心类型。调用 TaskManager::add_collection
来注册一个新的集合。然后,当您想要添加新任务时,调用 TaskManager::push_task
。
TasksCollection
和 CollectionData
TasksCollection
可以实现一个类型,然后这个类型可以用作几个方法的类型参数。
CollectionData
是一个实现了 TasksCollection
的“动态”版本,尽管并不完全。它持有集合的名称和执行器,并且除了这些之外,还持有当前正在运行的任务和接收任务产生的数据的通道。
Task
和 Caller
Task
具有名称和Caller
。 Caller
可以是Standard
或Progressing
。
Caller::standard
期望一个future。
Caller::progressing
期望一个带有类型TaskProgressShared
的闭包。此类型提供了进度跟踪功能以及如TaskProgressShared::set_total
和TaskProgressShared::update
等函数。这些函数允许您跟踪进度。
有关进度的更多信息,请参阅TaskProgressShared
。
TaskExecutor
确定任务执行的特质。
依赖关系
~6–13MB
~128K SLoC