Comecei a estudar ponteiros inteligentes do C ++ 11 e não vejo nenhum uso útil de std::weak_ptr. Alguém pode me dizer quando std::weak_ptré útil / necessário?
O código abaixo produz um aviso ao executar com desinfetante de threads no macOS. Não consigo ver onde está a corrida. O bloco de controle shared_ptr e weak_ptr é seguro para threads, e empurrar e saltar do std::queueé feito com um bloqueio mantido. #include <future> #include <memory> #include <queue> class …