DXGKDDI_DESTROYALLOCATION fonction de rappel (d3dkmddi.h)
La fonction DxgkDdiDestroyAllocation libère les allocations.
Syntaxe
DXGKDDI_DESTROYALLOCATION DxgkddiDestroyallocation;
NTSTATUS DxgkddiDestroyallocation(
[in] IN_CONST_HANDLE hAdapter,
[in] IN_CONST_PDXGKARG_DESTROYALLOCATION pDestroyAllocation
)
{...}
Paramètres
[in] hAdapter
Handle d’un bloc de contexte associé à une carte d’affichage. Le pilote miniport d’affichage a précédemment fourni cette poignée au sous-système du noyau graphique Microsoft DirectX dans le paramètre de sortie MiniportDeviceContext de la fonction DxgkDdiAddDevice .
[in] pDestroyAllocation
Pointeur vers une structure de DXGKARG_DESTROYALLOCATION qui contient des informations pour libérer les allocations.
Valeur retournée
DxgkDdiDestroyAllocation retourne STATUS_SUCCESS ou un résultat d’erreur approprié si les allocations ne sont pas correctement libérées.
Remarques
Lorsque le pilote d’affichage en mode utilisateur appelle la fonction pfnDeallocateCb , le sous-système du noyau graphique DirectX (qui fait partie de Dxgkrnl.sys) appelle la fonction DxgkDdiDdiDestroyAllocation du pilote d’affichage pour libérer les allocations. Le pilote miniport d’affichage doit propre ses structures de données internes et ses références aux allocations. Le runtime Microsoft Direct3D lance des appels au gestionnaire de mémoire vidéo (qui fait également partie de Dxgkrnl.sys), qui appelle ensuite le planificateur GPU (qui fait également partie de Dxgkrnl.sys) à synchroniser avant que la mémoire vidéo ne soit réellement publiée.
Le pilote miniport d’affichage peut libérer l’intégralité de la ressource ainsi que des allocations. Pour déterminer si la ressource doit être libérée, le pilote miniport d’affichage peut case activée si l’indicateur DestroyResource est défini dans le membre Flags de la structure DXGKARG_DESTROYALLOCATION vers laquelle pointe le paramètre pDestroyAllocation. Pour libérer la ressource, le pilote miniport d’affichage doit propre le handle que le membre hResource de DXGKARG_DESTROYALLOCATION spécifie. Si le pilote miniport d’affichage ne libère pas la ressource, le pilote peut modifier la valeur dans hResource si nécessaire.
DxgkDdiDestroyAllocation doit être mis en page.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |