Qual é a sobrecarga de shared_ptr ser seguro para threads?
std::shared_ptr
é garantido para ser thread-safe. Não sei qual mecanismo as implementações típicas usam para garantir isso, mas certamente deve ter alguma sobrecarga. E essa sobrecarga estaria presente mesmo no caso de seu aplicativo ser de thread único.
É o caso acima? E se sim, isso significa que viola o princípio de "você não paga pelo que não usa", se não estiver usando as garantias de segurança de threads?