Отслеживание неуправляемых объектов DirectX, размещенных через управляемый DirectX
-
21-09-2019 - |
Вопрос
У меня проблема: выполнение Device.Dispose() занимает много времени при закрытии приложения.Я выясняю, связано ли это с тем, что неуправляемые объекты не освобождаются должным образом, что приводит к длительному времени очистки.
Существует ли простой способ отслеживания или просмотра выделенных неуправляемых объектов DirectX?
Решение
Я нашел способ отслеживать все вызовы DirectX.
Загрузите и установите DirectX SDK (я установил в августе 2009 г.).
Запустите приложение под названием ПИКС для Windows в DirectX SDK -> Утилиты DirectX
Создайте новый эксперимент из меню «Файл».Выберите «воспроизводимый поток вызовов Direct3D, сохраненный в файл:», введите имя файла и выберите свое приложение.
При выходе из приложения будет показана полная трассировка всех вызовов DirectX с временной шкалой.