Gerenciamento de MemĂłria no Rust

O gerenciamento de memória no Rust é uma combinação:

  • Seguro e correto como Java, mas sem um coletor de lixo.
  • Dependendo de qual abstração (ou combinação de abstraçÔes) vocĂȘ escolher, pode ser um simples ponteiro Ășnico, referĂȘncia contada ou referĂȘncia atomicamente contada.
  • Baseado em escopo como C++, mas o compilador impĂ”e adesĂŁo total.
  • Um usuĂĄrio do Rust pode escolher a abstração certa para a situação, algumas atĂ© sem custo em tempo de execução como C.

O Rust consegue isso modelando o ownership (posse) explicitamente.

  • Neste ponto, se perguntado como, vocĂȘ pode mencionar que em Rust isso geralmente Ă© tratado por wrappers (invĂłlucros) RAII tais como Box, Vec, Rc ou Arc. Eles encapsulam a propriedade (ownership) e a alocação de memĂłria por vĂĄrios meios e previnem os erros possĂ­veis em C.

  • Aqui vocĂȘ pode ser perguntado sobre destrutores, o trait Drop Ă© o equivalente em Rust.