A thread-safe map that associates each key with at most one value: concurrent getOrPut calls for the same key always return the same instance, making it safe to store mutable values.
On platforms without multithreading, a plain map is a valid implementation.