概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## okuyama.imdst.util.serializemap
クラス SerializeMap

    java.lang.Object
      java.util.AbstractMap
          okuyama.imdst.util.serializemap.SerializeMap

すべての実装されたインタフェース:
  java.io.Serializable, java.lang.Cloneable, java.util.Map

直系の既知のサブクラス:
  PartialSerializeMap

    public class SerializeMap

extends java.util.AbstractMap
implements java.lang.Cloneable, java.io.Serializable

データ格納Map.
格納されるKeyとValueはKey値のHash値から導き出された、
特定の集合のHashMapに格納される。そしてそのHashMapはSerializeされさらに圧縮されて
byte配列として、1つのMapに格納される。
Serializeと圧縮を使うことと、全てのKeyとValueを格納するMapの要素数を増やさないことで
メモリ使用量を減らす.
スレッドセーフに並列アクセスが可能なように実装されている

作成者:
  T.Okuyama
関連項目:
  直列化された形式

入れ子のクラスの概要

クラス java.util.AbstractMap から継承された入れ子のクラス/インタフェース
`java.util.AbstractMap.SimpleEntry<K,V>, java.util.AbstractMap.SimpleImmutableEntry<K,V>`

インタフェース java.util.Map から継承された入れ子のクラス/インタフェース
`java.util.Map.Entry<K,V>`

フィールドの概要
`static long` | `bucketJvm1MBMemoryFactor`

コンストラクタの概要
`SerializeMap(int size, int upper, int multi, java.lang.String serializeClassName)` コンストラクタ

メソッドの概要
`void` | `clear()` clear
`boolean` | `containsKey(java.lang.Object key)` containsKey
`java.util.Map` | `dataDeserialize(byte[] data, java.lang.Object key, int uniqueNo)`
`byte[]` | `dataSerialize(java.util.Map data, java.lang.Class keyClazz, java.lang.Class valueClazz, java.lang.Object key, int uniqueNo)`
`java.util.Set` | `entrySet()` entrySet
`java.lang.Object` | `get(java.lang.Object key)` get
`java.lang.Object` | `put(java.lang.Object key, java.lang.Object value)` set
`java.lang.Object` | `remove(java.lang.Object key)` remove
`int` | `size()` size.

クラス java.util.AbstractMap から継承されたメソッド
`clone, containsValue, equals, hashCode, isEmpty, keySet, putAll, toString, values`

クラス java.lang.Object から継承されたメソッド
`finalize, getClass, notify, notifyAll, wait, wait, wait`

フィールドの詳細

### bucketJvm1MBMemoryFactor

    public static long bucketJvm1MBMemoryFactor

コンストラクタの詳細

### SerializeMap

    public SerializeMap(int size,
                        int upper,
                        int multi,
                        java.lang.String serializeClassName)

  コンストラクタ

  パラメータ:
    `size` - 予想格納最大数(現在内部的には利用しない)
    `upper` - 格納上限拡張閾値(現在内部的には利用しない)
    `multi` - 実際に格納に使用する集合バケット数 (現在の検証で1GBのJVMへのメモリ割当で40万程度、1MBで400件程度が適正値)

メソッドの詳細

### dataSerialize

    public byte[] dataSerialize(java.util.Map data,
                                java.lang.Class keyClazz,
                                java.lang.Class valueClazz,
                                java.lang.Object key,
                                int uniqueNo)

### dataDeserialize

    public java.util.Map dataDeserialize(byte[] data,
                                         java.lang.Object key,
                                         int uniqueNo)

### put

    public java.lang.Object put(java.lang.Object key,
                                java.lang.Object value)

  set

  定義:
    インタフェース `java.util.Map` 内の `put`
  オーバーライド:
    クラス `java.util.AbstractMap` 内の `put`
  パラメータ:
    `key` -
    `value` -

### get

    public java.lang.Object get(java.lang.Object key)

  get

  定義:
    インタフェース `java.util.Map` 内の `get`
  オーバーライド:
    クラス `java.util.AbstractMap` 内の `get`
  パラメータ:
    `key` -
  戻り値:
    Object

### remove

    public java.lang.Object remove(java.lang.Object key)

  remove

  定義:
    インタフェース `java.util.Map` 内の `remove`
  オーバーライド:
    クラス `java.util.AbstractMap` 内の `remove`
  パラメータ:
    `key` -
  戻り値:
    Object

### containsKey

    public boolean containsKey(java.lang.Object key)

  containsKey

  定義:
    インタフェース `java.util.Map` 内の `containsKey`
  オーバーライド:
    クラス `java.util.AbstractMap` 内の `containsKey`
  パラメータ:
    `key` -
  戻り値:
    boolean

### clear

    public void clear()

  clear

  定義:
    インタフェース `java.util.Map` 内の `clear`
  オーバーライド:
    クラス `java.util.AbstractMap` 内の `clear`

### size

    public int size()

  size.

  定義:
    インタフェース `java.util.Map` 内の `size`
  オーバーライド:
    クラス `java.util.AbstractMap` 内の `size`
  パラメータ:
    `` -
  戻り値:
    int
  例外:
    ``

### entrySet

    public java.util.Set entrySet()

  entrySet

  定義:
    インタフェース `java.util.Map` 内の `entrySet`
  定義:
    クラス `java.util.AbstractMap` 内の `entrySet`
  戻り値:
    Set

概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド