Интерфейс 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