Concurrent Access
The member classes const_accessor and accessor are called accessors. Accessors allow multiple threads to concurrently access pairs in a shared concurrent_hash_map. An accessor acts as a smart pointer to a pair in a concurrent_hash_map. It holds an implicit lock on a pair until the instance is destroyed or the release method is called on the accessor.
The const_accessor and accessor classes differ in the kind of access they permit, as shown in Table 5-4.
Table 5-4. Differences between const_accessor and accessor
|
Class |
value_type |
Implied lock on pair |
|---|---|---|
|
|
|
Reader lock: permits shared access with other readers |
|
|
|
Writer lock: blocks access by other threads |
Accessors cannot be assigned or copy-constructed because allowing that would greatly complicate the locking semantics.
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access