gpt4 book ai didi

java - 将对象缓存为不可变类

转载 作者:行者123 更新时间:2023-12-04 02:18:24 24 4
gpt4 key购买 nike

我问的是非常笼统的问题,答案可能因要求而异,但对于“一般”或“经验法则”,我们是否可以说以下是一个好的设计规则:

The classes to be cached (static/reference data) should be designed as immutable, with exceptions reasoned.

如果上述说法不正确,那么设计/性能问题可能是什么?

最佳答案

@JohnB 对基础数据有很好的回答。

但是,如果问题是指缓存类本身的不可变性(它们将数据保存在缓存中),那么答案是如果类的实例是可变类,则可变类会导致线程安全问题被多个线程引用(通常发生在通过缓存共享的数据中)。此外,可能会发生数据的“意外”修改,其中无意中修改了共享实例(因为修改代码不知道数据已共享)。

关于java - 将对象缓存为不可变类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12078428/

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