Start Debugging

memory

6 статей

Как синхронно обойти две коллекции без выделений памяти в куче в C#

Enumerable.Zip выделяет 144-208 байт на вызов и работает примерно в 10 раз медленнее обычного цикла. Для массивов и списков цикл for по двум span, обрезанным до одной длины, не выделяет память и работает быстрее всего; для синтаксиса foreach небольшой zip-перечислитель на ref struct отстаёт от него не более чем на 25%. Замеры на .NET 10.0.10 и .NET 11 RC 3.

Как диагностировать утечку памяти в управляемой куче с помощью dotnet-gcdump и dotnet-dump

Полный рабочий процесс поиска утечки памяти в управляемой куче .NET 11: подтвердить рост через dotnet-counters, снять два gcdump и сравнить их, затем собрать дамп и с помощью dumpheap, gcroot и objsize в dotnet-dump analyze найти то, что до сих пор удерживает ссылку.
2026-06-01 flutterdartmemory

Как освобождать контроллеры во Flutter, чтобы избежать утечек памяти

AnimationController, TextEditingController и ScrollController удерживают ресурсы, которые сборщик мусора Dart не может освободить, пока вы их не освободите. Вот правильный шаблон, правила порядка и как обнаружить утечки до публикации.