MALLOC_TRIM(3) | Linux Programmer's Manual | MALLOC_TRIM(3) |
malloc_trim - ヒープの一番上から未使用メモリーを解放する
#include <malloc.h>
int malloc_trim(size_t pad);
malloc_trim() 関数は (適切な引き数で sbrk(2) を呼び出して) ヒープの一番上の未使用メモリーの解放を試みる。
pad 引き数は、 ヒープの一番上から切り詰める際に残す未使用領域の量を指定する。 この引き数が 0 の場合、 ヒープの一番上の最小量のメモリーだけを維持できる (つまり 1 ページかそれ未満)。 0 以外の引き数を指定すると、 ヒープの一番上にある程度の量の未使用領域を残し、 将来の割り当てを sbrk(2) でヒープを拡張せずに行えるようにできる。
malloc_trim() 関数はメモリーが実際に解放されシステムに戻された場合に 1 を返し、 どのメモリーも解放できなかった場合は 0 を返す。
エラーは定義されていない。
この関数は GNU による拡張である。
この関数は、 特定の状況では free(3) により自動的に呼び出される。 mallopt(3) の M_TOP_PAD と M_TRIM_THRESHOLD の議論を参照。
この関数は、 ヒープの一番上以外の場所にある未使用メモリーを解放することはできない。
この関数はメイン領域のメモリーだけを解放する。
この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。
2014-05-28 | Linux |