gpt4 book ai didi

java - 单个对象映射或单独的(大尺寸)

转载 作者:行者123 更新时间:2023-12-01 09:18:01 25 4
gpt4 key购买 nike

我正在使用 libGDX 并且有一个类 Pools持有 ObjectMapPool (小)。

效果/射弹创建单独的ObjectMap更好还是使用Pools类(简单方式)。

大型 ObjectMap 是否会减慢 get(Class) 方法的速度,或者性能损失是否可以接受?

Java 文档:

/** An unordered map. This implementation is a cuckoo hash map using 3 hashes, random walking, and a small stash for problematic * keys. Null keys are not allowed. Null values are allowed. No allocation is done except when growing the table size.
*
* This map performs very fast get, containsKey, and remove (typically O(1), worst case O(log(n))). Put may be a bit slower, * depending on hash collisions. Load factors greater than 0.91 greatly increase the chances the map will have to rehash to the * next higher POT size. * @author Nathan Sweet */

最佳答案

您最好坚持使用 Pools 类。我认为你误解了这个类(class)是如何运作的。 Pools 类存储一个 ObjectMap,它按类类型存储对象池。

例如,如果您执行Pools.obtain(Bullet.class),该类将找到一个Bullet池,并从那里创建一个对象。您可能参加的任何其他类(class)也会发生同样的情况。这意味着在一个对象映射中实际上只有几个池。

除非您有数千或数百万个不同数据类型的数据,否则使用此类就完全没问题。

关于java - 单个对象映射或单独的(大尺寸),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40388467/

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