Moving `std::shared_ptr` between threads
Moving `std::unique_ptr` between threads
Polymorphism and `std::shared_ptr`
Polymorphism and `std::unique_ptr`
Memory management with `std::unique_ptr` and `std::shared_ptr` in concurrent environments