|
|
|
|
|
by yosefo
3437 days ago
|
|
I feel that using a linked list as the underlying structure combined with fine grained locking is the wrong direction to go.
What is the scenario in which I would use this collection over an unordered_map and some locking scheme?
A linked list is a very (very very) poor performer and I would only use a linked list for implementing a collection which is synchronized based on CAS operations instead of locking. Since your implementation relies on linked lists and fine grained locking, I have a hard time imagining a scenario where I would gain utility.
I would start by wrapping the std unordered_map and shared_mutex, testing and measuring the performance as a baseline and only then creating an alternative which could compete.
If you want to make it interesting, at least make the synchronization lock free and gain some advantage from using a linked list. |
|