Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Выделение памяти и время жизни

Элементы программы — это те функции, модули и типы, значения которых вычисляются во время компиляции и уникальным образом хранятся в образе памяти процесса Rust. Элементы не выделяются и не освобождаются динамически.

Куча — это общий термин, описывающий Box-ы (значения в куче). Время жизни выделения в куче зависит от времени жизни значений Box, указывающих на него. Поскольку значения Box сами могут передаваться внутрь и из стека вызовов (фреймов) или храниться в куче, выделения в куче могут переживать фрейм, в пределах которого они были выделены. Гарантируется, что выделение в куче будет находиться по единственному адресу в куче в течение всего времени жизни этого выделения — оно никогда не будет перемещено в результате перемещения значения Box.