Files
XCEngine/docs/api/threading/task-group/getprogress.md

40 lines
775 B
Markdown
Raw Normal View History

# TaskGroup::GetProgress
```cpp
float GetProgress() const
```
获取任务组的完成进度。
**参数:** 无
**返回:** `float` - 进度值,范围 0.0f ~ 1.0f
**复杂度:** O(1)
**示例:**
```cpp
TaskGroup* group = TaskSystem::Get().CreateTaskGroup();
for (int i = 0; i < 1000; ++i) {
group->AddTask([i]() { ProcessItem(i); });
}
// 显示进度
while (!group->IsComplete()) {
float progress = group->GetProgress();
printf("\rLoading: [%-50s] %.1f%%",
std::string(50, '=').substr(0, (int)(progress * 50)).c_str(),
progress * 100.0f);
fflush(stdout);
Thread::Sleep(100);
}
printf("\n");
```
## 相关文档
- [TaskGroup 总览](task-group.md) - 返回类总览
- [IsComplete](iscomplete.md) - 检查是否完成