Foreign-Memory Access API とは?
Java プログラムにおいて使用するメモリは、通常ヒープ領域の中から確保されます。ヒープはガーベジコレクタの管理下にあり、オブジェクトの生成に応じて必要なメモリがヒープから割り当てられ、オブジェクトが消滅したメモリはガーベジコレクタによって識別されて未使用ヒープに戻ります。しかし Java でも、オフヒープメモリ(Off-Heap-Memory) または外部メモリ (Foreign-Memory) と呼ばれる、ガーベジコレクタの管理外のメモリを使用する需要はあり、以前からオフヒープメモリアクセスを行う実装は存在していました。大きく分けて3つの方法があります。