Share via


Função DrvSynchronize (winddi.h)

A função DrvSynchronize informa ao driver que a GDI precisa acessar uma superfície gerenciada pelo dispositivo. Essa função permite que operações de desenho assíncronas executadas pelo coprocessador de um dispositivo sejam coordenadas com acessos GDI.

Sintaxe

void DrvSynchronize(
  DHPDEV dhpdev,
  RECTL  *prcl
);

Parâmetros

dhpdev

Identificador para a estrutura PDEV do dispositivo físico que identifica o dispositivo a ser sincronizado com a GDI. Esse parâmetro é o identificador de dispositivo retornado ao GDI por DrvEnablePDEV.

prcl

Ponteiro para uma estrutura RECTL . Esse parâmetro deve ser ignorado pelo driver.

Retornar valor

Nenhum

Comentários

Essa função permite que operações de desenho assíncronas executadas pelo coprocessador de um dispositivo sejam coordenadas com acessos GDI.

DrvSynchronize pode ser implementado opcionalmente em drivers de exibição. A GDI chamará essa função somente se ela for conectada por EngAssociateSurface. A GDI chama DrvSynchronize pouco antes de desenhar diretamente na superfície do dispositivo. A GDI chamará DrvSynchronizeSurface em vez de DrvSynchronize em drivers que implementam ambas as funções.

Essa função deve retornar somente quando for seguro para a GDI acessar qualquer superfície gerenciada pelo dispositivo. Ou seja, DrvSynchronize deve atrasar o retorno da chamada até que todas as operações de desenho assíncronas tenham sido concluídas pelo coprocessador do dispositivo, indicando que é seguro para a GDI acessar qualquer superfície gerenciada pelo dispositivo.

O DrvSynchronize destina-se a dar suporte a dispositivos que usam um coprocessador para desenho. Esse dispositivo pode tratar algumas operações de desenho como assíncronas, retornando à GDI da operação antes que o desenho seja concluído. Se esse for o caso, é possível que uma operação de desenho subsequente seja tratada pela GDI. Para que a GDI acesse com segurança superfícies gerenciadas pelo dispositivo, ela deve ter um meio de garantir que qualquer renderização assíncrona que esteja sendo feita pelo coprocessador do dispositivo esteja concluída. Ao chamar essa função, a GDI sincroniza o acesso a uma superfície gerenciada pelo dispositivo com o driver.

A GDI nunca chamará DrvSynchronize para superfícies gerenciadas pelo dispositivo. DrvSynchronize não é uma função de saída.

Requisitos

Requisito Valor
Plataforma de Destino Área de Trabalho
Cabeçalho winddi.h (inclua Winddi.h)

Confira também

DrvEnablePDEV

DrvSynchronizeSurface

EngAssociateSurface