948 B
948 B
D3D12CommandQueue::Wait
void Wait(RHIFence* fence, uint64_t value) override;
阻塞命令队列,直到指定栅栏的完成值达到指定值。该方法用于 GPU 内部的同步操作。
参数:
fence- 目标栅栏指针,不能为nullptrvalue- 等待的信号值
返回: 无
复杂度: O(1)
使用场景:
- 等待另一个命令队列的操作完成
- 实现 GPU 流水线各阶段之间的同步
- 多 GPU 节点间的同步
注意: 如果栅栏的当前值已经大于或等于指定值,则此方法立即返回。
示例
D3D12Fence* fence; // 已发送信号的栅栏
// 等待 fence 的值达到 1
commandQueue.Wait(fence, 1);
相关文档
- D3D12CommandQueue 总览 - 返回类总览
- Signal - 向栅栏发送信号
- Wait(ID3D12Fence*) - Native D3D12Fence 版本
- D3D12Fence