A concurrent hash-trie or TrieMap is a concurrent thread-safe lock-free implementation of a hash array mapped trie. It is used to implement the concurrent map abstraction. It has particularly scalable concurrent insert and remove operations and is memory-efficient. It supports O(1), atomic, lock-free snapshots which are used to implement linearizable lock-free size, iterator and clear operations. The cost of evaluating the (lazy) snapshot is distributed across subsequent updates, thus making snapshot evaluation horizontally scalable.
For details, see: http://lampwww.epfl.ch/~prokopec/ctries-snapshot.pdf
2.10
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.12.9/scala/collection/concurrent/index.html
A template trait for mutable maps that allow concurrent access.
This is a base trait for all Scala concurrent map implementations. It provides all of the methods a
Map
does, with the difference that all the changes are atomic. It also describes methods specific to concurrent maps.Note: The concurrent maps do not accept
null
for keys or values.the key type of the map
the value type of the map
2.8
"Scala's Collection Library overview" section on
Concurrent Maps
for more information.