While phmap does take read locks for reading, unlike ConcurrentHashMap, you can specify the number of subtables as a power of two, and the higher the number, the less likely there will be lock ...
A view of a ConcurrentHashMap as a Set of keys, in which additions may optionally be enabled by mapping to a common value. This class cannot be directly instantiated.