Replace usage of atomic_load/atomic_store of shared_ptr or custom mutex with atomic<shared_ptr>

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Storage Execution
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      The loose atomic_load/atomic_store functions for shared_ptr are implemented over a global pool of 16 mutexes on Linux and a single mutex on Windows.

      This leads to unrelated shared_ptr stores may use the same mutex and create contention for each other. We've added our own explicit mutexes but ideally we should use std::atomic<std::shared_ptr> when supported in our toolchain.

              Assignee:
              Unassigned
              Reporter:
              Henrik Edin
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

                Created:
                Updated: