Non-blocking access to concurrent_hash_map ?

Non-blocking access to concurrent_hash_map ?

I am wondering whether I can access concurrent_hash_map in the non-blocking fashion.
If I understand correctly,

bool find( accessor& result, const Key& key )

would acquire the write lock, and other threads trying to acquire the write lock for the same key would wait until
the write lock is released, right?

Is it possible for me to just 'try' the write lock? That is, a thread will try to acquire the write lock,
but if the entry is already write-locked then I would like to make it move on rather than being blocked
until the write lock gets released.

Thanks in advance,
Hyokun Yun 

2 Beiträge / 0 neu
Letzter Beitrag
Nähere Informationen zur Compiler-Optimierung finden Sie in unserem Optimierungshinweis.

Apparently not, but why would you want that? Threads are supposed to hold a write lock only as shortly as possible. Consider doing something with const_accessor instead (the documentation appears to be negligent about specifying whether multiple threads can concurrently hold a const_accessor to the same element?), concurrent_unordered_map, ...

Melden Sie sich an, um einen Kommentar zu hinterlassen.