Partager via


PFND3DDDI_DEALLOCATE2CB fonction de rappel (d3dumddi.h)

La fonction de rappel du mode utilisateur pfnDeallocate2Cb libère des allocations pour un objet de ressource en mode noyau si l’objet de ressource a été créé.

pfnDeallocate2Cb remplace pfnDeallocateCb qui a un membre Flags supplémentaire. Lorsque les indicateurs sont définis sur tous les zéros, le comportement équivaut à pfnDeallocateCb.

Syntaxe

PFND3DDDI_DEALLOCATE2CB Pfnd3dddiDeallocate2cb;

HRESULT Pfnd3dddiDeallocate2cb(
  HANDLE hDevice,
  const D3DDDICB_DEALLOCATE2 *unnamedParam2
)
{...}

Paramètres

hDevice

Handle pour le périphérique d’affichage (contexte graphique).

unnamedParam2

pData [in]

Pointeur vers une structure D3DDDICB_DEALLOCATE2 qui décrit la ressource à libérer.

Valeur retournée

Code de retour Description
S_OK La mémoire a été libérée avec succès.
E_INVALIDARG Les paramètres ont été validés et déterminés comme incorrects.

Cette fonction peut également retourner d’autres valeurs HRESULT.

Remarques

Lorsqu’une demande de destruction d’allocation est reçue, VidMm suppose, par défaut, que les commandes mises en file d’attente avant la demande de destruction peuvent accéder à l’allocation en cours de destruction et reporte l’opération de destruction jusqu’à la fin des commandes mises en file d’attente. Si le pilote de mode utilisateur (UMD) sait que les commandes en attente n’accèdent pas à l’allocation en cours de destruction, il peut demander à VidMm de ne pas attendre que les commandes en attente soient terminées en définissant l’indicateur AssumeNotInUse sur TRUE lors de l’appel de pfnDeallocate2Cb.

Si une application ou UMD souhaite s’assurer que la mémoire d’allocation est récupérée avant le retour de l’appel pfnDeallocate2Cb (par exemple, pour réduire l’utilisation maximale de la mémoire si la surface est recréée), elle doit définir l’indicateur SynchronousDestroy .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10
Serveur minimal pris en charge Windows Server 2016
Plateforme cible Desktop (Expérience utilisateur)
En-tête d3dumddi.h (inclure D3dumddi.h)

Voir aussi

D3DDDICB_DEALLOCATE2

pfnDeallocateCb