Память стека и кучи

-4

Мой вопрос здесь
Что такое стек и куча памяти
Почему нам нужны обе эти воспоминания
каковы плюсы и минусы каждого

спросил(а) 2011-01-21T12:55:00+03:00 9 лет, 8 месяцев назад
0
71

В двух словах:


The stack - память, которую программа использует для фактического запуска программы. Это содержит локальные переменные, данные обратного вызова (например, когда вы вызываете функцию, стек хранит состояние и помещает вас в код до того, как вы ввели новую функцию) и некоторые другие мелочи такого характера. Обычно вы не управляете стеком напрямую, переменные и данные уничтожаются, создаются при перемещении и выводе функций.

The heap - "Динамическая" память программы. Каждый раз, когда вы создаете новый объект или переменную динамически, он сохраняется в куче. Эта память управляется непосредственно программистом, вы должны заботиться о создании и удалении объектов там.

ответил(а) 2011-01-21T13:03:00+03:00 9 лет, 8 месяцев назад
57

Отметьте эту короткую статью о JVM, которая объясняет стек Java и кучу.

ответил(а) 2012-05-15T13:32:00+04:00 8 лет, 4 месяца назад
58

В C/С++ языковая память, выделенная в стек, автоматически освобождается при завершении области выделения, память в куче должна быть бесплатной с некоторой политикой (free(), delete... или некоторым сборщиком мусора). Память, выделенная в куче, видна среди разных областей функций. В стеке мы не можем выделить большой кусок памяти, поэтому куча также полезна, когда tou необходимо выделить большое пространство для данных.

ответил(а) 2011-01-21T13:01:00+03:00 9 лет, 8 месяцев назад
41

Я не уверен, в каком контексте вы спрашиваете, но я могу ответить от их использования в распределении памяти. Обе эти структуры данных необходимы для моих платформ, например .NET для сбора мусора. Помните, что все типы значений хранятся в стеке и все ссылочные типы в куче. Эта среда справки справки создает граф объектов и отслеживает, что все объекты не используются и могут быть рассмотрены для сбора мусора.

ответил(а) 2011-01-21T13:05:00+03:00 9 лет, 8 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема