Partager via


Méthode CBaseAllocator.Decommit

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement au nouveau code d’utiliser MediaPlayer, IMFMediaEngine et La capture audio/vidéo dans Media Foundation au lieu de DirectShow, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

La Decommit méthode désengage l’allocator. Cette méthode implémente la méthode IMemAllocator::D ecommit .

Syntaxe

HRESULT Decommit();

Paramètres

Cette méthode n’a aucun paramètre.

Valeur retournée

Retourne S_OK.

Notes

Une fois cette méthode appelée, les appels à la méthode CBaseAllocator::GetBuffer échouent. À mesure que les échantillons sont publiés, ils sont renvoyés à la liste gratuite. Lorsque le dernier exemple est retourné, l’allocateur appelle la méthode CBaseAllocator::Free , qui libère la mémoire allouée. (Dans la classe de base, Free est une méthode virtuelle pure.)

En outre, cette méthode libère tous les threads qui sont bloqués sur les appels GetBuffer . Les appels à GetBuffer échouent.

Configuration requise

Condition requise Valeur
En-tête
Amfilter.h (include Streams.h)
Bibliothèque
Strmbase.lib (builds de vente au détail) ;
Strmbasd.lib (builds de débogage)

Voir aussi

CBaseAllocator, classe