Files
XCEngine/docs/api/threading/task-group/getprogress.md
ssdfasd 6a952473ce docs: fix threading module documentation discrepancies
- Fix include paths: use #include "Threading/..." instead of <XCEngine/Threading/...>
- Document protected ITask constructors (ITask(), ITask(TaskPriority))
- Document Callback typedef in TaskGroup
- Clarify Mutex STL-compatible methods are const
- Note GetProgress() implementation limitation (returns 0.0f)
2026-03-19 00:49:08 +08:00

885 B
Raw Blame History

TaskGroup::GetProgress

float GetProgress() const

获取任务组的完成进度。

参数:

返回: float - 进度值,范围 0.0f ~ 1.0f

复杂度: O(1)

注意: 当前实现中 m_completedCount 未被更新,此方法始终返回 0.0f(任务组为空时返回 1.0f)。此为实现限制,文档仅作记录。

示例:

TaskGroup* group = TaskSystem::Get().CreateTaskGroup();

for (int i = 0; i < 1000; ++i) {
    group->AddTask([i]() { ProcessItem(i); });
}

// 显示进度(注意:当前实现始终返回 0.0f
while (!group->IsComplete()) {
    float progress = group->GetProgress();
    printf("\rProgress: %.1f%%", progress * 100.0f);
    Thread::Sleep(100);
}
printf("\n");

相关文档