gpt4 book ai didi

java - Guava 缓存的 RemovalListener 是否同步?

转载 作者:行者123 更新时间:2023-12-04 04:49:14 27 4
gpt4 key购买 nike

我想知道 RemovalListener Guava 缓存的缓存在已删除条目的键上同步。据我了解,Guava 缓存是建立在 SynchronizedHashMap 之上的。如果我对缓存的 get 进行两次调用,则不会加载两次条目相同键上的方法,因为调用在 SynchronizedHashMap 的相同序列上同步.现在我想知道用户是否可以调用get而一个 RemovalListener仍在运行其onRemoval(RemovalNotification)不同线程上的方法。

谢谢你的帮助!

最佳答案

Guava 缓存更像是 ConcurrentHashMap ,尽管它不是建立在 CHM 之上的;它涉及对整个事情的重写。

也就是说,您的问题的答案是,如果一个条目正在由 RemovalListener 处理。 ,它不再在缓存中,并且一个 get查询将被视为该条目从未在缓存中:通过从头开始加载该键的值。

关于java - Guava 缓存的 RemovalListener 是否同步?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17681532/

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