Поделиться через


Интерфейс ID3DDestructionNotifier (d3dcommon.h)

ID3DDestructionNotifier — это интерфейс, который можно использовать для регистрации обратных вызовов при уничтожении объекта Nano-COM Direct3D.

Чтобы получить экземпляр этого интерфейса, вызовите объект Direct3D с идентификаторомID3DDestructionNotifier.

Использование эквивалентов ID3DDestructionNotifier вместо ID3D12Object::SetPrivateDataInterface или Direct3D 11 обеспечивает более надежные гарантии порядка уничтожения. При использовании ID3DDestructionNotifier неявные связи, такие как ID3D11View , содержащий ссылку на его базовый ID3D11Resource, гарантированно являются допустимыми и для объекта, на который указывает ссылка (здесь ID3D11Object), будет по-прежнему активным при вызове обратного вызова уничтожения. При использовании ID3D12Object::SetPrivateDataInterface неявные ссылки можно освободить до вызова обратного вызова уничтожения.

Доступ к объекту, управляемый во время обратного вызова, не является безопасным.

Наследование

Интерфейс ID3DDestructionNotifier наследуется от интерфейса IUnknown .

Методы

Интерфейс ID3DDestructionNotifier содержит следующие методы.

 
ID3DDestructionNotifier::RegisterDestructionCallback

Регистрирует определяемый пользователем обратный вызов для вызова при уничтожении объекта, из которого был создан этот id3DDestructionNotifier .
ID3DDestructionNotifier::UnregisterDestructionCallback

Отменяет регистрацию обратного вызова, зарегистрированного с помощью RegisterDestructionCallback.

Комментарии

ID3DDestructionNotifier можно использовать для отслеживания ресурсов, которые неожиданно освобождаются рано, или для создания журнала удаления объектов.

Требования

   
Минимальная версия клиента Windows 7 [| классических приложений Приложения UWP]
Минимальная версия сервера Windows Server 2008 R2 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header d3dcommon.h

См. также раздел

ID3DDestructionNotifier::RegisterDestructionCallback

ID3DDestructionNotifier::UnregisterDestructionCallback

Интерфейсы общих версий