JAVA中线程安全的map有哪些?

如题。
2025-05-15 22:01:24
推荐回答(4个)
回答1:

JAVA中线程安全的map有:Hashtable、synchronizedMap、ConcurrentHashMap。

java中map中线程安全怎么实现:

  1. 同步的map就是Hashtable, concurrenthashmap。

  2. 你看到的Hashtable就是直接在hashmap上加了个锁,concurrenthashmap就是分成多个分段锁。

java代码中线程安全级别:

  1. 绝对线程安全。

    在任何环境下,调用者都不需要考虑额外的同步措施,都能够保证程序的正确性。

    这个定义要求很严格,java里面满足这个要求的类比较少,对于实现jsr133规范(java内存模型)的jdk(一般指jdk5.0之上),一般的不变类都是满足绝地线程安全的。比如 String,Integer类。一般情况下,定义了如果一个类里面所有字段都是final类型的,一般都认为这个类是不变的。不变类都是绝对线程安全的。

  2. 相对线程安全   

    在一般情况下,调用者都不需要考虑线程同步,大多数情况下,都能够正常运行。jdk里面大多数类都是相对安全的。最常见的例子是java里面Vector类。

回答2:

Hashtable、synchronizedMap、ConcurrentHashMap

二楼说的HashMap是非线程安全的

回答3:

ConcurrentMap 这个效率高点
HashMap

回答4:

HashTable我记得好像只有这一个