2009-11-19 79 views
0

我有一個問題,其中Device.Dispose()需要很長時間才能在應用程序關閉時執行。我正在調查這是否是由於未被管理的對象沒有被正確釋放,從而導致很長的清理時間。追蹤通過託管DirectX分配的非託管DirectX對象

是否有一種簡單的方法來跟蹤或查看已分配的非託管DirectX對象?

回答

1

我發現了一種方法來跟蹤所有對DirectX的調用。

下載並安裝DirectX SDK(我安裝了2009年8月)。

運行在DirectX SDK稱爲PIX的Windows應用程序 - >的DirectX工具

創建從文件菜單中一個新的實驗。選擇「可重放的Direct3D呼叫流,保存到文件:」,輸入文件名並選擇您的應用程序。

當您退出應用程序時,所有DirectX調用的完整跟蹤將以時間軸顯示完整。