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.