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.
Get Intel Threading Building Blocks now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.