Garbage collection in modern web applications
summary
SoundCloud builds a tracing garbage collector on top of React + Redux (TypeScript, Electron/Xbox) that tracks live selector functions, exposes a drop-in gcConnect, and frees memory by running selectors to rebuild state into a fresh normalized store instead of mutating or nulling entities. The system turns many duplicate entities (ten tracks → six tracked entities) into a compact graph, avoids component rerenders because object references stay intact, and proves effective at stopping long‑running memory growth while trading extra selector evaluations.
AI-written summary · about
chapters (5)
related talks
24mTrash Talk - Understanding Memory Management
21mMemory: Don't Forget to Take Out the Garbage
24mCross-Component Garbage Collection
19mUnderstand, find, prevent and fix memory leaks in JavaScript
47mUntangling the web: Memory management in Chrome’s web platform implementation
29mJS Memory Management and Garbage Collection
20mMemory Leaks and the Havoc They Wreak
30mMemory Don't Forget To Take Out The Garbage
