java - 当 Guava Table 的支持映射是线程安全的时,它是线程安全的吗?

标签 java guava

请问 Guava 的Tables.newCustomTable(Map, Supplier)提供线程安全映射时方法返回线程安全表?例如:

public static <R, C, V> Table<R, C, V> newConcurrentTable() {
  return Tables.newCustomTable(
      new ConcurrentHashMap<R, Map<C, V>>(),
      new Supplier<Map<C, V>>() {
        public Map<C, V> get() {
          return new ConcurrentHashMap<C, V>();
        }
      });
}

该代码实际上是否返回并发表?

最佳答案

来自文档:“如果多个线程同时访问该表并且其中一个线程修改了该表,则它必须在外部进行同步。”

并发支持集合是不够的。

关于java - 当 Guava Table 的支持映射是线程安全的时,它是线程安全的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8018135/

相关文章:

java - 我在哪里可以找到适用于希望切换到 Android 手机上工作的 iphone 开发人员的易于遵循的过渡方法?

java - Jersey 客户端导致 415 Unsupported media type

java - 尽管 equals() 和 hashCode() 返回不同的值,Multimap 仍然在 containsValue() 上找到实例。怎么可能?

java - Android 上的 Guava-Splitter 需要 1.7 秒来初始化?

java - 将通用事件传递给 Guava EventBus?

java - 有没有一种优雅的方法可以在使用 Guava 转换 Collection 时删除空值?

java - -source 1.6 不支持 lambda 表达式 [错误](使用 -source 8 或更高版本启用 lambda 表达式)

java - 相反的方法不执行任何堆栈操作

java - 找不到Guava 20.0-SNAPSHOT Artifact

java - 带有 BindingResult 的 Spring 4 @Validation 注释不起作用