Хотя сборщик мусора (GC) работает, память часто остается выделенной внутри процесса как свободная память, но не возвращается в ОС. Такое поведение приводит к интенсивному использованию памяти процессами, и некоторые приложения в конечном итоге выдают исключение OutOfMemoryException.
Кроме того, перед запуском GC поколение 0 часто вырастает до значительных размеров, иногда достигая сотен мегабайт или даже несколько гигабайт. Чрезмерное использование памяти вызывает серьезные проблемы с производительностью, и мне нужно решение, позволяющее оптимизировать использование памяти, заставить приложения .NET 8 более эффективно освобождать неиспользуемую память и смягчить эти проблемы.
Приложения используют EF Core 8.0.11 (только чтение). DbContext зарегистрирован как ограниченный.
Код: Выделить всё
return dbContext.Speakers.AsNoTracking().OrderBy(s => s.Name).ThenBy(s => s.Id);
Подробнее здесь: https://stackoverflow.com/questions/793 ... ons-on-iis
Мобильная версия