Os ponteiros inteligentes podem parecer limitados, mas eles podem fazer algumas combinações muito poderosas.
Rc<Vec<Foo>> - permite a clonagem de vários ponteiros inteligentes que podem pegar emprestado o mesmo vetor de estruturas de dados imutáveis na heap.
Rc<RefCell<Foo>> - permite a múltiplos ponteiros inteligentes a capacidade de emprestar mutável/imutavelmente a mesma estrutura Foo.
Arc<Mutex<Foo>> - permite que vários ponteiros inteligentes bloqueiem empréstimos mutáveis/imutáveis temporários exclusivamente por thread de CPU.
Detalhes da memória: