51 lines
1.0 KiB
Markdown
51 lines
1.0 KiB
Markdown
|
|
# TaskGroup::IsComplete
|
||
|
|
|
||
|
|
```cpp
|
||
|
|
bool IsComplete() const;
|
||
|
|
```
|
||
|
|
|
||
|
|
检查任务组中的所有任务是否已完成。
|
||
|
|
|
||
|
|
**参数:** 无
|
||
|
|
|
||
|
|
**返回:**
|
||
|
|
- `true` - 所有任务已完成(包括被取消的)
|
||
|
|
- `false` - 仍有任务在执行或等待执行
|
||
|
|
|
||
|
|
**线程安全:** ✅ 线程安全
|
||
|
|
|
||
|
|
**示例:**
|
||
|
|
|
||
|
|
```cpp
|
||
|
|
#include "XCEngine/Threading/TaskGroup.h"
|
||
|
|
#include "XCEngine/Threading/Task.h"
|
||
|
|
#include <iostream>
|
||
|
|
#include <chrono>
|
||
|
|
|
||
|
|
using namespace XCEngine::Threading;
|
||
|
|
|
||
|
|
int main() {
|
||
|
|
TaskGroup group;
|
||
|
|
|
||
|
|
group.AddTask([]() {
|
||
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(100));
|
||
|
|
std::cout << "Task completed\n";
|
||
|
|
});
|
||
|
|
|
||
|
|
std::cout << "Immediately after AddTask, IsComplete: "
|
||
|
|
<< (group.IsComplete() ? "true" : "false") << "\n";
|
||
|
|
|
||
|
|
group.Wait();
|
||
|
|
|
||
|
|
std::cout << "After Wait, IsComplete: "
|
||
|
|
<< (group.IsComplete() ? "true" : "false") << "\n";
|
||
|
|
|
||
|
|
return 0;
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
## 相关文档
|
||
|
|
|
||
|
|
- [TaskGroup 总览](task-group.md) - 返回类总览
|
||
|
|
- [GetProgress](get-progress.md) - 获取进度百分比
|