dotMemory: snapshot total memory: not all listed

Hi,

I'm running a UWP C# app using dotMemory.

My snapshot total memory continues to climb when I take snapshots, but I can't seem to find it all (the leak), in the memory traffic or the snapshot page.

Can you please give some advice on where to look?

For example, the current snapshot says:

250.90 MB total

7.85 MB .NET, total

3.77 MB .NET, used

 

 

Best regards.

 

4 comments
Comment actions Permalink

For example, the current snapshot says:

250.90 MB total

7.85 MB .NET, total

3.77 MB .NET, used

0
Comment actions Permalink

Hi,

We can't provide you universal guideline how to find memory leaks. There are several types of memory issues that can occur in .NET applications. It can be memory leak, when objects are referenced by other objects with the reference you don’t know about, it can be ineffective memory usage (e.g. duplicated strings creation) or high memory traffic.

Why do you assume that your application has a memory leak and what symptoms show that?

If your assumption are based on the fact that memory grows when it shouldn't, and this memory is not garbage collected after calling GC or getting snapshot (Get snapshot button also calls GC), you can try to investigate objects which were created between snapshots (snapshots comparison view). If a class should not have new instances but it does, than it is, probably, the cause of the leak.

More information you can find in our help: https://www.jetbrains.com/help/dotmemory/How_to_Find_a_Memory_Leak.html

Also we suggest you to read the book about detecting and solving memory issues in .NET applications: https://leanpub.com/detectingandsolvingmemoryproblemsinnet

0
Comment actions Permalink

The app ends up getting 2G total and stops.

The .net totals are all under 10M.

0
Comment actions Permalink

If application grows up to 2GB but .NET memory remains about the same value, more likely that you have a memory leak in unmanaged memory. dotMemory is a pure .NET profiler. Unfortunately, it can't help you to analyze unmanaged memory.

Probably you don't dispose some unmanaged resources like bitmaps or something else.

0

Please sign in to leave a comment.