I intended to implement a HashTable to locate objects quickly which is important for my application.
However, I don't like the idea of scanning and potentially having to lock the entire table in order to locate which object was last accessed. Tables could be quite large.
What data structures are commonly used to overcome that?
e.g. I thought I could throw objects into a FIFO as well as the cache in order to know how old something is. But that's not going to support an LRU algorithm.
Any ideas? how does squid do it?