java - 如果所有键都是唯一的, map 的 put 是否需要同步?

标签 java dictionary synchronization

<分区>

让我们假设一个场景,其中“键”永远不会重叠,但对于应用程序来说是唯一的。换句话说,每次放都会 never被要求使用相同的 key 。在这种情况下:

  1. map.put 是否需要同步?

  2. 如果是,那么如何?

例如,假设 <Name, Id> 的情况在想象的世界里,每个人的名字都是独一无二的。 在这样的应用程序中,我需要同步 map put 吗?

最佳答案

是的。例如:新键上的 put() 可能导致 map 上的 resize() - 两个同时的 resize() 调用可能导致数据结构的内部变得不一致。不一致可能意味着(实际目击)导致对 put() 的后续调用无限循环,因为它使内部引用不一致并创建了一个循环。

关于java - 如果所有键都是唯一的, map 的 put 是否需要同步?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19329708/

相关文章:

Java 分页列表

ios - NSMutableArray 为图像创建问题

java - 具有空键功能的线程安全映射

java - 如何使用 Java 中的时间戳过滤器在 mongodb 中进行地理空间查询?

java - IntelliJ IDEA 断点无效

java - Eclipse中Android项目名称错误

mysql - 如何使用struts同步java web应用程序中的 Action 流?

Java:HashMap.get 返回 null

android - 如何防止输入存储在android用户字典中

java - 等待计时器在 Java 中完成