Встречается на собеседованиях • сегодня

Почему в Rust нет Garbage Collector

Rust использует систему владения (ownership) и заимствования (borrowing) для управления памятью во время компиляции, что делает ненужным сборщик мусора (GC). Это обеспечивает:

  1. Предсказуемость — нет пауз из-за GC.
  2. Безопасность — компилятор гарантирует отсутствие утечек и висячих указателей.
  3. Производительность — нет накладных расходов на runtime-управление памятью.

Пример:

rust
fn main() {
    let s = String::from("hello"); // s владеет строкой
    takes_ownership(s);            // s перемещается в функцию
    // println!("{}", s);          // Ошибка: s больше не валидна
}

fn takes_ownership(s: String) {    // s становится владельцем
    println!("{}", s);             // память освобождается при выходе
}

Вместо GC Rust полагается на RAII (Resource Acquisition Is Initialization) и проверки на этапе компиляции.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы