Уровень 0 · материалов: 5
В кластер включаются документы, посвященные механизмам работы памяти, причинам возникновения утечек и методам борьбы с переполнением памяти, и исключаются материалы об общих инструментах отладки, логировании или проблемах компиляции.
Общие признаки: ошибки OutOfMemoryError, утечки памяти, сборка мусора (Garbage Collection), диагностика и устранение проблем с памятью, инструменты профилирования
Группа выше: Обработка ошибок и надёжность кода
Смысл: The main idea is to provide a practical guide for developers on how to identify, analyze, and eliminate logical memory leaks in complex JavaScript applications using Chrome Developer Tools.
A technical guide on using Chrome DevTools and the three-snapshot technique to detect and fix JavaScript memory leaks, illustrated with examples from Yandex.Mail.
Смысл: The main idea is that JavaScript developers must understand how garbage collection works to prevent memory leaks caused by unwanted references, and they should utilize browser profiling tools to detect and resolve these performance bottlenecks.
A technical guide explaining four common causes of JavaScript memory leaks and providing a step-by-step tutorial on using Chrome DevTools to identify and fix them.
Смысл: The main idea is that the Firebug extension is a frequent cause of memory leaks in Firefox, and the best way to handle this is by isolating development tools into a separate browser profile.
To stop Firefox memory leaks caused by Firebug, create separate 'developer' and 'user' profiles using the '-p' flag.
Смысл: The main idea is that performance issues appearing as memory leaks can actually be caused by object structural complexity (deep nesting) which slows down the Garbage Collector's mark-and-sweep process, leading to OOM crashes despite the absence of actual leaked references.
Deeply nested objects in Node.js can slow down Major Garbage Collection to the point of causing OOM crashes, mimicking a memory leak even when no references are actually leaked.
Смысл: The main idea is to educate developers that OutOfMemoryError in Java is a generic signal for several distinct memory exhaustion scenarios (Heap, PermGen, GC overhead, and Native Threads), each requiring a different diagnostic and resolution strategy.
OutOfMemoryError in Java can be caused by heap exhaustion, PermGen limits, excessive GC overhead, or the inability to allocate native thread stacks, not just by filling the -Xmx heap.