912 B
912 B
TaskGroup::Wait
阻塞当前线程,等待任务组完成。
void Wait();
行为说明
当前实现会等待条件变量,直到谓词 m_pendingCount.load() == 0 为真。
返回值
- 无。
当前实现限制
- 当前源码里
m_pendingCount会在 AddTask 时递增,但没有任何代码路径会把它递减。 - 这意味着只要任务组里添加过任务,
Wait()当前就不会因为正常任务完成而返回。 - Cancel 也不会通知条件变量,因此取消并不能唤醒这里的等待。
使用建议
- 当前不要在生产代码中依赖这个接口实现真正的任务组同步。
- 如果你需要可靠同步,优先直接使用 Thread::Join 或更低层的锁/条件变量方案。