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) |