Nuking Nasty Memory Leaks
summary
LeakCanary automatically triggers a heap dump when an Activity should be collected, parses it (MAT fork) and shows the shortest path to GC roots so the leaking field is obvious. Examples: a singleton-registered ActivityLifecycleCallback keeps a View hierarchy alive; a Runnable posted to a View ends up in a ThreadLocal RunQueue and never drains; Picasso cancels the wrong Picasso instance so the Target stays in its map. Fixes: unregister callbacks or remove queued runnables and cancel on the correct Picasso instance; the tool and workflow reliably surface actionable leaks.
AI-written summary · about
chapters (4)
related talks
37mLeakCanary, then what? Nuking Nasty Memory Leaks
42mSpeaking of Leaking
31mA Small Leak Can Sink A Great Ship
24mUnveiling the Unseen Threat: Demystifying Memory Leaks in Android
37mRoot causing memory growth with LeakCanary 3
47mLeakCanary, and Then? Unraveling Android Memory Leaks
49mPokeLeaks: Gotta Catch 'em All
35mA small leak can sink a great ship
