32 lines
733 B
Markdown
32 lines
733 B
Markdown
# RHICommandQueue::WaitForIdle
|
|
|
|
```cpp
|
|
virtual void WaitForIdle() = 0;
|
|
```
|
|
|
|
等待命令队列完成所有已提交的操作。这是确保 GPU 执行完所有待处理命令的最简单方法,适用于需要完全同步的场景(如资源销毁前)。
|
|
|
|
**参数:** 无
|
|
|
|
**返回:** 无
|
|
|
|
**线程安全:** ❌ 非线程安全,应在渲染线程中调用
|
|
|
|
**复杂度:** O(n) - 取决于待处理命令的数量
|
|
|
|
**示例:**
|
|
|
|
```cpp
|
|
#include "RHICommandQueue.h"
|
|
|
|
void EnsureGPUIdle(RHICommandQueue* cmdQueue) {
|
|
cmdQueue->ExecuteCommandLists(1, (void**)&cmdList);
|
|
cmdQueue->WaitForIdle();
|
|
}
|
|
```
|
|
|
|
## 相关文档
|
|
|
|
- [RHICommandQueue 总览](command-queue.md) - 返回类总览
|
|
- [Wait](wait.md) - 等待栅栏
|