D3DKMT_SIGNALSYNCHRONIZATIONOBJECT2 结构 (d3dkmthk.h)

D3DKMT_SIGNALSYNCHRONIZATIONOBJECT2 结构包含 有关 D3DKMTSignalSynchronizationObject2 函数信号的同步事件的信息。

语法

typedef struct _D3DKMT_SIGNALSYNCHRONIZATIONOBJECT2 {
  [in] D3DKMT_HANDLE        hContext;
  [in] UINT                 ObjectCount;
       D3DKMT_HANDLE        ObjectHandleArray[D3DDDI_MAX_OBJECT_SIGNALED];
  [in] D3DDDICB_SIGNALFLAGS Flags;
  [in] ULONG                BroadcastContextCount;
       D3DKMT_HANDLE        BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT];
  union {
    struct {
      D3DKMT_ALIGN64 UINT64 FenceValue;
    } Fence;
         HANDLE                CpuEventHandle;
         D3DKMT_ALIGN64 UINT64 Reserved[8];
  };
} D3DKMT_SIGNALSYNCHRONIZATIONOBJECT2;

成员

[in] hContext

上下文的内核模式句柄,该上下文向 ObjectHandleArray 成员指定的数组中的同步事件发出信号。

[in] ObjectCount

ObjectHandleArray 数组中的同步事件数。

[in] ObjectHandleArray[D3DDDI_MAX_OBJECT_SIGNALED]

由内核模式句柄组成的数组,指向 由 hContext 成员指定的上下文发出信号的同步事件。 D3DDDI_MAX_OBJECT_SIGNALED常量(定义为 32)指示上下文可以发出信号的最大同步事件数。

[in] Flags

D3DDDICB_SIGNALFLAGS结构,在位字段标志中指示信号行为。

[in] BroadcastContextCount

BroadcastContext 指定的数组中其他上下文的数目。

[in] BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]

D3DKMT_HANDLE数据类型的数组,这些数据类型表示要广播事件的其他上下文的内核模式句柄。 D3DDDI_MAX_BROADCAST_CONTEXT常量(定义为 64)定义 OpenGL ICD 可以将事件广播到的最大上下文数。

hContext 成员指定并拥有事件的原始上下文不是 BroadcastContext 数组中的元素。 例如,如果 BroadcastContext 数组包含一个元素,则 OpenGL ICD 会将事件发送到拥有上下文 (hContext) 并广播到该附加上下文。

Fence

包含围栏相关信息的 结构。 D3DKMT_SIGNALSYNCHRONIZATIONOBJECT2 中的联合可以保存 Fence 结构,该结构包含以下成员:

Fence.FenceValue

一个 64 位值,指定要发出信号的围栏值。

CpuEventHandle

要发出信号的 CPU 事件的句柄。

从 Windows 8 开始支持。

Reserved[8]

保留供将来使用的 64 位值的数组。 D3DKMT_SIGNALSYNCHRONIZATIONOBJECT2 中的联合可以保存此数组。

要求

要求
最低受支持的客户端 从 Windows 7 操作系统开始支持D3DKMT_SIGNALSYNCHRONIZATIONOBJECT2。
标头 d3dkmthk.h (包括 D3dkmthk.h)

另请参阅

D3DDDICB_SIGNALFLAGS

D3DKMTSignalSynchronizationObject2