tonyxrandall

tonyxrandall

How to detect iOS memory leaks and retain cycles using Xcode's memory graph

At DoorDash we are consistently making an effort to increase our user experience by increasing our app’s stability. A major part of this effort is to prevent, fix and remove any retain cycles and memory leaks in our large codebase. In order to detect and fix these issues, we have found the Memory Graph Debugger to be quick and easy to use. After significantly increasing our OOM-free session rate on our Dasher iOS app, we would like to share some tips on avoiding and fixing retain cycles as well as a quick introduction using Xcode’s memory graph debugger for those who are not familiar.

Where Next?

Popular Ios topics Top

New
First poster: bot
Mastering UNIX pipes, Part 1. A pipe is a first-in-first-out interprocess communication channel. The pipe version as it is known today w...
New
First poster: bot
Many iPhone owners have iMessages from years ago that they can’t access. For example, my wife and I simply want to read the first few mes...
New
First poster: bot
Mastering List in SwiftUI. List is the crucial view for many apps. I can’t imagine an app that doesn’t use a list view anywhere in the v...
New
First poster: bot
I read and loved Potential’s “iOS 15, Humane” proposition. Published earlier in June by co-founders Welf and Oliver, it tackles how iOS c...
New
First poster: bot
Amnesty International has detailed evidence showing some of the ways NSO’s Pegasus spyware tool infiltrated the iPhones of journalists an...
New
First poster: bot
Since the very first version of Swift, we’ve been able to define our various types as either classes, structs, or enums. But now, with th...
New
First poster: bot
Let the nostalgia rain over you as we take a look back and reminisce about the history of Xcode from its lowly beginnings…
New
tonyxrandall
At DoorDash we are consistently making an effort to increase our user experience by increasing our app’s stability. A major part of this ...
New
New

Other popular topics Top

PragmaticBookshelf
Instantly view the changes you make to an app with stateful hot reload, and define a declarative UI in the same language as the app logic...
New
PragmaticBookshelf
Design and develop sophisticated 2D games that are as much fun to make as they are to play. From particle effects and pathfinding to soci...
New
Rainer
My first contact with Erlang was about 2 years ago when I used RabbitMQ, which is written in Erlang, for my job. This made me curious and...
New
AstonJ
I ended up cancelling my Moonlander order as I think it’s just going to be a bit too bulky for me. I think the Planck and the Preonic (o...
New
husaindevelop
Inside our android webview app, we are trying to paste the copied content from another app eg (notes) using navigator.clipboard.readtext ...
New
PragmaticBookshelf
Develop, deploy, and debug BEAM applications using BEAMOps: a new paradigm that focuses on scalability, fault tolerance, and owning each ...
New
CommunityNews
A Brief Review of the Minisforum V3 AMD Tablet. Update: I have created an awesome-minisforum-v3 GitHub repository to list information fo...
New
sir.laksmana_wenk
I’m able to do the “artistic” part of game-development; character designing/modeling, music, environment modeling, etc. However, I don’t...
New
AnfaengerAlex
Hello, I’m a beginner in Android development and I’m facing an issue with my project setup. In my build.gradle.kts file, I have the foll...
New
Fl4m3Ph03n1x
Background Lately I am in a quest to find a good quality TTS ai generation tool to run locally in order to create audio for some videos I...
New