std::shared_ptr
ist garantiert fadensicher. Ich weiß nicht, welchen Mechanismus die typischen Implementierungen verwenden, um dies sicherzustellen, aber sicherlich muss es einige Gemeinkosten haben. Und dieser Overhead wäre auch dann vorhanden, wenn Ihre Anwendung single-threaded ist.Wie hoch ist der Overhead von shared_ptr threadsicher?
Ist das oben der Fall? Und wenn ja, verstößt das gegen den Grundsatz "Sie zahlen nicht für das, was Sie nicht nutzen", wenn Sie die Sicherheitsgarantien nicht nutzen?
Aus dem Speicher verfügt die Loki-Bibliothek über intelligente Zeiger mit einer Thread-Sicherheitsrichtlinie, die dieses Problem beheben. –
FYI, http://Stackoverflow.com/questions/15129263/is-there-a-non-atomic-equivalent-of-stdshared-ptr-and-why-ist-there-one-in –