Использование памяти

Версия 7.6 от Alexandr Fokin на 2023/02/15 22:38
Предупреждение: Из соображений безопасности документ отображается в ограниченном режиме, поскольку это не текущая версия. Из-за этого могут быть расхождения и ошибки.

Память в Net:

1) Стек | StackОбласть памяти, выделяемая для каждого потока.
Используется для хранения стека вызова функций потока, параметров при вызове функций и локальных переменных (структур и ссылок на классы).
Имеет константный размер, при переполнении приводит к падению программы.
Выделение памяти и отчистка происходит быстро (по сравнению с другими), не задействует сборщик мусора.
2) Куча | Heap

Основная область для хранения экземпляров объектов.
В своей работе задействует сборщик мусора, для оптимизации пространства также происходит процесс дефрагментации.

Состоит из 3 компонентов:
2.1) Основной раздел
2.2) LOH | Large object heap
2.3) POH | Pinned object heap


Обработка больших объемов данных в памяти на C#
https://habr.com/ru/post/114495/

Память: LOH и Chunked Lists
https://habr.com/ru/post/83929/

.NET Max Memory Use 2GB even for x64 Assemblies
https://stackoverflow.com/questions/982051/net-max-memory-use-2gb-even-for-x64-assemblies

Обратная сторона луны
https://habr.com/ru/post/149584/

Конфигурация


Внутренние ссылки:

Дочерние страницы:
Обратные ссылки:

Не удалось выполнить макрос [velocity]. Причина: [The execution of the [velocity] script macro is not allowed in [xwiki:Разработка.NET.C#.Производительность.Использование памяти.WebHome]. Check the rights of its last author or the parameters if it's rendered from another script.]. Нажмите на это сообщение для получения подробной информации.