Memory analysis with HeapShot - large amount of unknown memory

khickskhicks USUniversity ✭✭

I have an application that makes multiple calls to a data server, parses the data returned, and stored it in a SQLite database. When running on an older iPad (3rd Gen), I am receiving memory warnings that ultimately terminate the app.

I initially tried using the Xamarin Profiler, but the profiler immediately stops after starting the app with multiple exception messages in the profiler output (NullReferenceException, OutOfMemoryException, StackOverflowException) so that has been a non-starter thus far.

I tried profiling using HeapShot with the iOS simulator, taking a memory snapshot every 10 seconds. During the data transfer process, I am seeing a big jump in total memory size (jumping from ~8MB when the app is idle to over 140MB, as shown in the attached screenshots). When I expand the source, the size of the items underneath it don't add up to the 142MB (Attached Photo 1).

When inversing references in HeapShot, it looks like a large amount of memory is listed under (Attached Photo 2).

Is there anything useful that can be gathered from looking at these logs? Is there a better approach that I should be using to figure out what is causing the memory warnings when debugging the app on a physical device?

Sign In or Register to comment.