Compartilhar via


estrutura D3DKMT_OPENSYNCOBJECTFROMNTHANDLE2 (d3dkmthk.h)

D3DKMT_OPENSYNCOBJECTFROMNTHANDLE2 é usado com D3DKMTOpenSyncObjectFromNtHandle2 para abrir um objeto de cerca monitorado.

Sintaxe

typedef struct _D3DKMT_OPENSYNCOBJECTFROMNTHANDLE2 {
  void                               D3DKMT_PTR(
    HANDLE    unnamedParam1,
    hNtHandle unnamedParam2
  );
  [in]  D3DKMT_HANDLE                      hDevice;
  [in]  D3DDDI_SYNCHRONIZATIONOBJECT_FLAGS Flags;
  [out] D3DKMT_HANDLE                      hSyncObject;
  union {
    struct {
      void                                  D3DKMT_PTR(
    VOID                        *unnamedParam1,
    FenceValueCPUVirtualAddress unnamedParam2
  );
      D3DKMT_ALIGN64 D3DGPU_VIRTUAL_ADDRESS FenceValueGPUVirtualAddress;
      UINT                                  EngineAffinity;
    } MonitoredFence;
          D3DKMT_ALIGN64 UINT64 Reserved[8];
  };
} D3DKMT_OPENSYNCOBJECTFROMNTHANDLE2;

Membros

void D3DKMT_PTR( HANDLE unnamedParam1, hNtHandle unnamedParam2)

[in] hDevice

Identificador de dispositivo no qual usar esse objeto de sincronização.

[in] Flags

Especifica o comportamento de objeto de sincronização desejado para este dispositivo, como a semântica de espera e sinal e a manipulação de TDR.

[out] hSyncObject

Manipule para o objeto de sincronização que pode ser usado nesse processo.

MonitoredFence

Contém endereços virtuais de objeto de sincronização que podem ser usados nesse processo.

void D3DKMT_PTR( VOID *unnamedParam1, FenceValueCPUVirtualAddress unnamedParam2)

[out] MonitoredFence.FenceValueGPUVirtualAddress

Um mapeamento de leitura/gravação do valor da cerca para a GPU. Um driver pode sinalizar um novo valor de cerca inserindo um comando de gravação de GPU para esse endereço em um buffer de comando, e o kernel de elementos gráficos DirectX desbloqueará garçons para esse valor de objeto de cerca. Esse endereço virtual de GPU é mapeado de forma assíncrona e o driver deve aguardar o dispositivo que abriu ou criou o objeto de sincronização de cerca monitorado para alcançar PagingFenceValue em seu objeto de cerca de paginação antes de acessar esse endereço virtual de GPU. Dependendo do valor do limite No64BitAtomics , esse endereço aponta para um valor subjacente de 32 bits ou 64 bits.

[in] MonitoredFence.EngineAffinity

Um campo de bits, em que cada posição de bit (a partir de zero) define um índice de adaptador físico em um link do adaptador de exibição vinculado em que o endereço virtual da GPU será confirmado. Zero significa que o endereço virtual da GPU será confirmado em todos os adaptadores físicos.

Reserved[8]

O valor consolidado da estrutura MonitoredFence .

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10
Servidor mínimo com suporte Windows Server 2016
Cabeçalho d3dkmthk.h (inclua D3dkmthk.h)

Confira também

D3DKMTOpenSyncObjectFromNtHandle2