Como desalocar algo como uma estrutura de dados complexa pode levar bastante tempo,
uma dica é mover a estrutura para uma thread separada para cuidar da liberação de memória e assim melhorar a velocidade (na prática, a latência)
→ no caso de um HashMap com 1 milhão de chaves, o efeito é de um funcionamento cerca de 10 mil vezes mais rápido
2 comentários
Ao ver que o Rust Playground estava linkado nesse post - https://play.rust-lang.org/?version=stable&mode=debug&edition=…
fui procurar achando que talvez fosse um GitHub Gist, e era mesmo - https://gist.github.com/rust-play/e6036d23879b0d0abda5196dfa8a131e
Aparentemente, quando se aperta o botão de compartilhar no Playground, ele deve ter sido feito para salvar automaticamente em um GitHub Gist.
Sempre que se cria uma thread para fazer algo assim, o código pode ficar ineficiente, então veja esta dica e use logo o
defer_drop, que já foi transformado em crate.https://docs.rs/defer-drop/1.0.0/defer_drop/