我们有一个类,它使用了一个类型为>的私有成员作为存储。这种类型的对象在内存中保存,并且经常被(潜在地)多个线程修改。同时,这些对象(或者说是底层的Map)也会根据请求通过HTTP进行序列化输出。序列化格式为Json,目前正在使用Google的库。
当序列化与引入新的修改同时发生时,我们会看到。从直觉上讲,这是很合理的,因为Gson可能正在迭代被修改的。
我们该如何避免这种情况呢?我们需要始终将Map的深拷贝传递给Gson吗?如果是这样的话,你又该如何实现这个深拷贝,考虑到这个Map可能包含所有的Json基元,包括和
当序列化与引入新的修改同时发生时,我们会看到。从直觉上讲,这是很合理的,因为Gson可能正在迭代被修改的。
我们该如何避免这种情况呢?我们需要始终将Map的深拷贝传递给Gson吗?如果是这样的话,你又该如何实现这个深拷贝,考虑到这个Map可能包含所有的Json基元,包括和