Hello everyone.

The Mixed Reality Forums here are no longer being used or maintained.

There are a few other places we would like to direct you to for support, both from Microsoft and from the community.

The first way we want to connect with you is our mixed reality developer program, which you can sign up for at https://aka.ms/IWantMR.

For technical questions, please use Stack Overflow, and tag your questions using either hololens or windows-mixed-reality.

If you want to join in discussions, please do so in the HoloDevelopers Slack, which you can join by going to https://aka.ms/holodevelopers, or in our Microsoft Tech Communities forums at https://techcommunity.microsoft.com/t5/mixed-reality/ct-p/MicrosoftMixedReality.

And always feel free to hit us up on Twitter @MxdRealityDev.
Options

DirectX11 memory leaks at sample "Holographic DirectX 11 App"

Hi everyone,

I'm exploring UWP template "Holographic DirectX 11 App". After closing Mixed Reality Portal window, I ask ID3D11Device to make report about live objects:

ID3D11Debug* DebugDevice = nullptr;
HRESULT Result = pDevice->QueryInterface(__uuidof(ID3D11Debug), reinterpret_cast<void **>(&DebugDevice));
Result = DebugDevice->ReportLiveDeviceObjects(D3D11_RLDO_DETAIL);
if (DebugDevice) DebugDevice->Release();

I expect that there will not be any live objects, but I receive the following warnings:

D3D11 WARNING: Live ID3D11Device at 0x029D387C, Refcount: 44 [ STATE_CREATION WARNING #441: LIVE_DEVICE]

Other warning are here: d3d11 warnings

Is there a sample exists that does not leak?
If I want my App do not leak, how can I avoid that?

Thanks,
-Andrey

Tagged:

Answers

  • Options

    I've never gotten the Holographic DirectX 11 App template to work with my current setup (Dell Laptop w/ Dell Visor HMD), until today. I kept getting Access Violations and/or Invalid Cast Exceptions in the auto-generated DeviceResources.cs file, in EnsureCameraResources().

    I've finally tracked down the issue to a single line in the CameraResources.cs file in CreateResourcesForBackBuffer(), where I had to comment out the line below to get the template project to run properly:

        // We took a reference to a COM interface when we got the native pointer; here, we
        // release that reference.
        Marshal.Release(pResource);
    

    I'm not sure if this helps with your memory leak issue, but I thought that I'd mention it. I may start a whole new topic around this issue at some point.

Sign In or Register to comment.