私はlibGDXを使用しており、ObjectMapとPool(s)を持つクラスPoolsを使用しています。単一オブジェクトマップまたは別個の(大きいサイズ)
はそれが効果/発射のために別々のObjectMap
Sを作成したり、Pools
クラス(簡単な方法)を使用することをお勧めします。
ObjectMap
は遅くなりませんget(Class)
メソッドが遅くなったり、パフォーマンスが低下したりしますか?
Javaのドク:
/**順不同マップ。この実装は、3 のハッシュ、ランダムウォーキング、および問題のある*キーの小さな隠しを使用したカッコウハッシュマップです。 ヌルキーは使用できません。ヌル値は許可されます。テーブルサイズを大きくする場合を除いて、割り当ては行われません。
*
*このマップ は、非常に高速なget、containsKey、removeを実行します(通常O(1)、最悪の場合 ケースO(log(n)))。 Putはハッシュに応じて少し遅くなります。 衝突。荷重係数が0.91を超えると、マップが次に高いPOTサイズに再ハッシュしなければならない機会が大幅に増えます。 * @authorネイサンスウィート*/
何百万ものエントリがある場合は、少し遅くなりますが、まずメモリ不足になる可能性が高くなります。 Javaのパフォーマンスチューニングを10年以上専門にしていても、推測がほとんど間違っているため、アプリケーションのプロファイリングを行う前に、アプリケーションのパフォーマンスを低下させる可能性のあるすべてのことを考慮する必要があります。 –
別にラットがあります。 – stark
キーを検索するデータクラスが非常に多い場合は、時間がかかります。これは設計上の問題が深刻であることを示しています。 – Tenfour04