# Memory Management (Rust) > Stack проти heap, allocator, Drop trait, RAII, витоки пам'яті через цикли Rc, Pin - 20 питань зі співбесід - Senior - [Питання зі співбесід: Rust](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy.md) ## 1. Де в Rust зберігаються локальні змінні примітивних типів, таких як i32 або bool? **Відповідь** Локальні змінні примітивних типів зберігаються на stack. Stack забезпечує дуже швидке виділення та звільнення пам'яті, оскільки працює за принципом LIFO (Last In, First Out). Примітивні типи мають розмір, відомий під час компіляції, що дозволяє компілятору зарезервувати необхідний простір у stack frame поточної функції. ## 2. Який smart pointer слід використовувати для виділення значення на heap з одним власником? **Відповідь** Box — це найпростіший smart pointer для виділення на heap. Він гарантує одноосібне володіння та автоматично звільняє пам'ять, коли Box виходить зі scope. Box корисний для типів з невідомим під час компіляції розміром, для великих структур, які не хочеться копіювати на stack, або для рекурсивних типів. ## 3. Що таке патерн RAII (Resource Acquisition Is Initialization) у Rust? **Відповідь** RAII — це патерн, у якому ресурси (пам'ять, файли, з'єднання) набуваються під час створення об'єкта та автоматично звільняються під час його знищення. У Rust це робиться через trait Drop, який автоматично викликається, коли значення виходить за межі scope. Цей патерн гарантує, що жоден ресурс не буде забуто, і запобігає витокам пам'яті. ## Ще 17 доступних питань - Коли trait Drop автоматично викликається у Rust? - Як можна створити витік пам'яті (memory leak) за допомогою Rc у Rust? Зареєструйся безкоштовно: https://sharpskill.dev/uk/login ## Інші теми співбесід Rust - [Основи Rust](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/rust-basics.md): 25 запитань, Junior - [Ownership & Borrowing](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/ownership-borrowing.md): 22 запитань, Junior - [Structs & Enums](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/structs-enums.md): 20 запитань, Junior - [Обробка помилок](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/error-handling.md): 18 запитань, Junior - [Колекції](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/collections.md): 20 запитань, Junior - [Модулі та пакети](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/modules-packages.md): 18 запитань, Junior - [Traits](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/traits.md): 22 запитань, Mid-Level - [Generics](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/generics.md): 20 запитань, Mid-Level - [Lifetimes](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/lifetimes.md): 20 запитань, Mid-Level - [Iterators & Closures](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/iterators-closures.md): 22 запитань, Mid-Level - [Smart Pointers](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/smart-pointers.md): 22 запитань, Mid-Level - [Concurrency Basics](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/concurrency-basics.md): 20 запитань, Mid-Level - [async/await](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/async-await.md): 22 запитань, Mid-Level - [Testing](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/testing.md): 18 запитань, Mid-Level - [Cargo & Ecosystem](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/cargo-ecosystem.md): 18 запитань, Mid-Level - [Pattern Matching](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/pattern-matching.md): 18 запитань, Mid-Level - [Макроси](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/macros.md): 20 запитань, Mid-Level - [Serde та серіалізація](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/serde-serialization.md): 20 запитань, Mid-Level - [Unsafe Rust](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/unsafe-rust.md): 20 запитань, Senior - [Просунуті trait'и](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/advanced-traits.md): 22 запитань, Senior - [Просунуті Lifetimes](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/advanced-lifetimes.md): 20 запитань, Senior - [Type System](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/type-system.md): 20 запитань, Senior - [Tokio & Async I/O](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/tokio-async.md): 22 запитань, Senior - [Оптимізація продуктивності](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/performance-optimization.md): 20 запитань, Senior - [Web Frameworks](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/web-frameworks.md): 22 запитань, Senior - [Database Integration](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/database-integration.md): 20 запитань, Senior - [Патерни проєктування Rust](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/design-patterns.md): 20 запитань, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/memory-management