gpt4 book ai didi

java - ConcurrentHashMap 的迭代

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:49:48 24 4
gpt4 key购买 nike

我正在阅读有关 ConcurrentHashMap 的内容。

我读到它提供了一个不需要同步的 Iterator,甚至允许在迭代期间修改 Map,因此不会有 ConcurrentModificationException

我想知道这是否是一件好事,因为我可能无法获取元素,在迭代期间将其放入 ConcurrentHashMap 中,因为另一个线程可能已更改它。

我的想法对吗?如果是,是好是坏?

最佳答案

I was wondering if this is a good thing as I might not get the element, put into ConcurrentHashMap earlier, during iteration as another thread might have changed it.

我不认为这应该是一个问题 - 如果您使用同步并且执行迭代的线程恰好获取锁并在插入值的线程之前执行它的循环,则同样的说法也是正确的。

如果您需要在线程之间进行某种协调以确保某些操作在另一个操作之后(且仅在)另一个操作之后发生,那么您仍然需要管理这种协调,而不管使用的 Map 类型如何。

关于java - ConcurrentHashMap 的迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16920595/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com